替换子字符串如果后面的数字,如屏幕分辨率,php



我已经找遍了所有地方,但是我还是卡住了,需要一些帮助。
我相信我需要一个正则表达式来替换数字末尾的引号"(用于英寸)。
例如21.5"21.5inch
只有当"前面有数字时,我才需要这样做。提前感谢!

此任务的正则表达式为

(d)"

这是DEMO和解释

试试这个:

(?<=d)"
https://regex101.com/r/lC9tZ7/2

只要后面跟着一个数字,它就应该抓住"

如果数字和"之间可以有空格,试试:

(?<=d)s*"
https://regex101.com/r/cT1bF7/3

试试(d+.{0,1}d+)s*"

说明:让我们尝试匹配21.54 inch

    d+匹配21
  1. .{0,1}转义十进制记数法,匹配.至少0次(即根本没有十进制)和最多1次(即一个数字最多只能有1个十进制)。目前我们已经匹配了21.
  2. d+匹配剩余的54。目前匹配21.54
  3. s*可以忽略数字
  4. 后面的空格
  5. "最后确保数字后面跟着英寸表示法。

点击这里查看演示链接

最新更新