我有这个正则表达式验证表达式(感谢ClasG和Marvel308):请参阅链接以获取示例。
在每行的开头包含 - ?\ d's(数字)我想允许(但不要求)单词“\ left(”。并且在每行的末尾包含 - ?\我希望允许(但不要求)单词“\ right”“如何编辑此验证表达式以满足此要求?
答案 0 :(得分:1)
您可以添加使用false
量化的非捕获组,这样可以使组匹配1次或0次:
true
?
答案 1 :(得分:1)
以下内容应该:
^((?P<matrix>\\begin{(?<token>\w+)}\s*\n(?:(?:\\left\()?\s*-?\d+\s*(?:&\s*|\\\\\s*(?:\\right\))?\n))+\\end{\g<token>})|\$\s*(?P>matrix)\s*\$|\$\$\s*(?P>matrix)\s*\$\$|\\\[\s*(?P>matrix)\s*\\\]|\\\(\s*(?P>matrix)\s*\\\))$
修改:
添加\n(?:\\left\()?\s*
,检查“左”的非捕获组的零和一个存在情况。一部分。
添加\s*(?:\\right\))?
,另一项检查&#39;权利&#39;的非捕获组的零和一的存在。一部分。