正如标题所述,我正在寻找一个正则表达式来匹配大于给定长度的字符串,因此:
[\s\S]{51,}
所以以下将匹配:
Cras risus ipsum, faucibus ut, ullamcorper id, varius ac, leo.
而以下不会:
Vestibulum volutpat pretium libero.
但是,我想要一个附加条件,即应该从字符数中排除出现在字符串末尾的特定字符序列。该序列本身可以由正则表达式定义。例如:
something\/[\w]+\/at-the-end\/[\d]+$
所以以下应该仍然匹配:
Cras risus ipsum, faucibus ut, ullamcorper id, varius ac, leo.
以下内容仍然不应该:
Vestibulum volutpat pretium libero. something/random/at-the-end/12345
我在想,如果有可能的话,它会以某种方式涉及环视,但我不知道我将如何构建它。我正在寻找使用单个正则表达式的解决方案。
您可以尝试使用负前瞻来调整您的模式匹配:
^((?!at-the-end\/\d+)[\s\S]){51,}[\s\S]*$
该模式背后的基本思想是,它会消耗任何单个字符,只要后面不是 at-the-end/
,后面跟着一个或多个数字,后面跟着字符串的结尾。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句