我一直在搜集页面,整理出一个列表来比较价格和维度。我只使用了widthxlength,不包括高度。但是,有些测量值带有高度,有时还带有小数位数,例如:
5.0x10.0x8.0
10.0x10.0x9.0
10.0x15.0x9.0
10.0x20.0x9.0
我在试着排除.0和最后一个维度。仅以以下结果结束:
5x10 10x10 10x15 10x20
我使用过\d+[ ][X][ ]\d+
和(\d+'x\d+')
来解决类似的问题,但是我很难找到解决这个问题的方法。
发布于 2019-02-20 07:15:20
您可以匹配整个字符串,捕获宽度和长度的整数部分,并替换为两个捕获组。匹配
(\d+)\.\d+x(\d+)\.\d+(?:x\d+\.\d+)?
并替换为
$1x$2
https://regex101.com/r/BOkRx6/3
如果小数部分可能不存在,则将模式中的每个小数部分放入一个可选的非捕获组:
(\d+)(?:\.\d+)?x(\d+)(?:\.\d+)?(?:x\d+(?:\.\d+)?)?
https://stackoverflow.com/questions/54776348
复制相似问题