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


replace substring if follows number, eg screen resolution, 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. "最后确保数字后面跟着英寸表示法。

点击这里查看演示链接