用点代替数字
Replace Numbers with dots
本文关键字:数字 更新时间:2023-09-26
我试图将系统中的一些ID号码替换为可点击的号码以打开相关记录。问题是,它们有时是这种格式:123.456.789。当我使用正则表达式时,我可以替换它们,它工作得很好。问题发生时,我也有IP地址,其中正则表达式也匹配:123.[123.123.123]([]表示它匹配)。
我怎样才能防止这种行为?
我尝试这样做:/^(?!'.)([0-9]{3}'.[0-9]{3}'.[0-9]{3})(?!'.)/
我正在研究票务系统中的"笔记"。当注释只包含ID或IP时,regexp是有效的。当它包含更多像
这样的文本时Affected IDs:
641.298.855 (this, lead)
213.794.868
948.895.285
那么它就不再匹配我的id了。你能帮我解决这个问题并解释我做错了什么吗?
添加gm
修饰符:
/^(?!'.)([0-9]{3}'.[0-9]{3}'.[0-9]{3})(?!'.)/gm
https://regex101.com/r/pK1fV4/2 您不需要在开始时使用负面向前看,也不需要包括g
修饰符,仅m
修饰符对于这种情况就足够了,因为^
匹配一行的开始,下面的模式将匹配仅存在于开始的字符串,因此它不会做任何全局匹配(即,在单行中进行两个或更多匹配)。
/^([0-9]{3}'.[0-9]{3}'.[0-9]{3})(?!'.)/m
出于性能考虑,您进一步不需要使用捕获组。
/^[0-9]{3}'.[0-9]{3}'.[0-9]{3}(?!'.)/m
相关文章:
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 测试索引值是否等于某个数字的倍数
- 将数字转换为一定数量的硬币
- 键入最后一位数字后自动提交
- 如何在javascript中迭代数字列表
- Javascript逻辑运算符和字符串/数字
- 如何在javascript中获得与特定数字相等的随机数
- 如果元素's的ID以数字开头
- 递增一个数字而不去掉前导零
- 如何使用JavaScript查找1和N之间的所有数字的总和
- 如何在这里将两个值最低的数字相加
- 如何删除除冒号、数字和'上午'或者'下午'
- 如何为jQuery屏蔽输入插件创建一个允许字母数字、空格和重音字符的掩码
- Javascript排序字符串或数字
- 我想在AngularJS应用程序中创建一个输入数字框,用户不应该在该框上键入十进制数字.(一个整数输入框)
- 将数字四舍五入到小数点后两位
- 我如何在数字插入中使用逗号,这样它就不会'不要破坏我的输入字段
- 正则表达式与数字中的第二个点匹配
- 制作一个regex来验证只有一个数字的字符串
- 分开的数字和字母