互联网搜索了一波,发现这东西就是会触发异常,那么像前置零宽断言这种语句可以有什么办法改写吗?本人实在是正则苦手,或者求一波正则学习的方法。
异常的是
/(?<=[0-9])x\b/
需要匹配 25x 50x 中的 x
目前想到的办法是用
.replace /()()/, '$1 x'
这种办法
1
eason1874 2021-11-20 13:01:28 +08:00
例子少,不知道你想要的是什么
[0-9] 只匹配一个数字,这样才是匹配两个数字 [0-9]{2} |
3
eason1874 2021-11-20 14:15:21 +08:00
搜了下,貌似是 iOS 不支持断言,别用断言换其他的试试
比如匹配不捕获 /(?:[0-9])x\b/ 或者都捕获,通过变量获取匹配内容再处理 |
4
eason1874 2021-11-20 14:17:07 +08:00
如果 \b 也不支持,就给 x 也写个匹配规则
|
6
lin98 2021-11-20 15:13:34 +08:00
像一楼说的一样,你这个只能匹配一位数字,如果确定是两位数字 /(?<=[0-9]{2})x\b/. 否则可以 /(?<=[0-9]+)x\b/
|