需要编写正则表达式来解析命令

时间:2016-07-06 06:43:08

标签: salesforce apex

需要编写正则表达式以从字符串中获取3个组 -
<whatever text including new lines optional -group 1>/command <text until \n or </p> is encountered- group 2><whatever text including new lines optional -group 3>

我尝试的是 -
Pattern pattern1 = Pattern.compile('(.*?)[/]command (.*?)\n?(.*?)'); 它应该为string-
给出以下输出 some \ nthing / command cmdtext / nasdfjaklsdjf \ nfgskdlkfg \ ndgsdfgsdfgsdfg
第1组 - 一些事情 第2组 - cmdtext
第3组 - asdfjaklsdjf \ nfgskdlkfg \ ndgsdfgsdfgsdfg

我没有得到的是如何得到*的出现而且。*不考虑该群体。虽然这对我有用 -

*

1 个答案:

答案 0 :(得分:0)

此正则表达式应符合您的要求:

'([\\s\\S]*)/command (.*?)(?:\n|</p>)([\\s\\S]*)'

您无法将\n.*匹配,因此我使用的是\\s\\S(实际上是\s\S但是使用Apex转义了反斜杠)。