我一直试图让JS正则表达式匹配如下:
"一些字符串的东西[其他字符串的东西]更多的字符串东西"
' ['和']'字符是可选的。 之间的文本不是可选的(可以是单个字母数字甚至是完整的句子)。 到目前为止,我已经提出了(以及其间的许多其他想法的迭代):
/^(some string stuff \[?.*\]? more string stuff)$/gim
注意' gim'因为我逐行测试,查找所有匹配并忽略大小写。 但是每一个测试似乎都令人沮丧地几乎工作但不完全,我的正则表达并不是那么强大! Iv通过其他论坛帖子搜索,同样一些差不多工作,但经过多少修修补补后甚至还没有。 任何帮助将不胜感激!
修改
""一些字符串的东西"在开始和"更多字符串的东西"最后,字符串必须是有效的。它只是它们之间的文本有差异;也就是说它可以是任何东西,只要它不是换行符。有效文字的例子:
some string stuff [other string stuff] more string stuff
some string stuff other string stuff more string stuff
some string stuff string more string stuff
some string stuff [string] more string stuff
无效文字的例子:
some string stuff more string stuff
some string stuff [] more string stuff
some string stuff more string stuff
some string stuff \n more string stuff
答案 0 :(得分:0)
/^([A-Za-z ])+([\[]?)[A-Za-z ]+([\]]?)([A-Za-z ]+)/gim