大佬教程收集整理的这篇文章主要介绍了在 Javascript RegExp 构造函数中使用正则表达式,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个这样的正则表达式,使用 https://regexr.com/
可以正常工作([a-zA-Z0-9-.~%!$&'()*+,;=@]+(/[a-zA-Z0-9-.~ %!$&'()+,;=:@]+)/?|(/[a-zA-Z0-9-.~%!$&'()* +,;=:@]+)+/?)(?[a-zA-Z0-9-.~%!$&'()+,;=:@/?])?(#[a-zA-Z0-9-._~%!$&'()+,;=:@/?])?
我想将它与下面的 RegExp() 一起使用(我只是将上面的字符串放在原始字符串中),但它不起作用。我需要做任何其他治疗吗?
const pattern =String.raw`([a-zA-Z0-9\-._~%!$&'()*+,;=@]+(\/[a-zA-Z0-9\-._~%!$&'()*+,;=:@]+)*\/?|(\/[a-zA-Z0-9\-._~%!$&'()*+,;=:@]+)+\/?)(\?[a-zA-Z0-9\-._~%!$&'()*+,;=:@/?]*)?(\#[a-zA-Z0-9\-._~%!$&'()*+,;=:@/?]*)?`;
let re = new RegExp(pattern);
return re.test(someString)
我也尝试将正则表达式用 / 和 / 括起来,如下所示,但它也不起作用。它允许空格,但我真的不允许空格。
const re = new RegExp(/([a-zA-Z0-9\-._~%!$&'()*+,;=:@/?]*)?/);
更新: 我想我的问题应该是如何确保它与全文匹配,就像我在上面的网站中可以做的测试一样(附在下面的截图)
@H_874_31@
我认为这个问题的根源在于 regexr 匹配整个字符串,而不仅仅是一部分。如果部分正则表达式匹配,.test()
将返回 true。如果您只想在匹配完整字符串时返回 true,我建议使用 start ^
和 end $
分隔符。
,
匹配字符串的开头 4,5A
和结尾 ^
以获得精确匹配,否则将接受子字符串。
$
在示例字符串上:
const re = new RegExp('^regex$')
以上是大佬教程为你收集整理的在 Javascript RegExp 构造函数中使用正则表达式全部内容,希望文章能够帮你解决在 Javascript RegExp 构造函数中使用正则表达式所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。