微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

正则表达式 – 匹配Unicode控制字符,除了三个正则表达式

我需要得到一个正则表达式,它匹配除回车符(0x0d),换行符(0x0a)和制表符(0x09)之外的所有Unicode控制字符.目前,我的正则表达式如下所示:

/\p{C}/u

我现在只需要定义这三个例外.

解决方法

我认为你可以在这里使用负面预测,结合角色类.

/(?![\x{000d}\x{000a}\x{0009}])\p{C}/u

这样做是使用负向前瞻来断言该字符不是字符类中指定的字符之一.然后它再次遍历角色以使其与任何控制角色相匹配.

我使用perl语法指定单个unicode点.

关于外观here的更多讨论

(请注意,这尚未经过测试,但我认为这个概念是正确的.)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐