Regex 要匹配和排除的正则表达式

Regex 要匹配和排除的正则表达式,regex,Regex,我一直在翻页整理清单,比较价格和尺寸。我只使用了宽度x长度,不包括高度。然而,有些测量带有高度,有时带有小数,例如: 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+'),但我很难找到解决方法。您可以匹配整个字符串,捕获宽度和长度的整数部分,并替换为两个捕获组。匹配

我一直在翻页整理清单,比较价格和尺寸。我只使用了宽度x长度,不包括高度。然而,有些测量带有高度,有时带有小数,例如:

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+')
,但我很难找到解决方法。

您可以匹配整个字符串,捕获宽度和长度的整数部分,并替换为两个捕获组。匹配

(\d+)\.\d+x(\d+)\.\d+(?:x\d+\.\d+)?
并替换为

$1x$2

如果小数部分可能不存在,则将模式中的每个小数部分放入可选的非捕获组:

(\d+)(?:\.\d+)?x(\d+)(?:\.\d+)?(?:x\d+(?:\.\d+)?)?

请解释您使用的编程语言或工具。这是一个“提取”问题还是一个“替换”问题?你已经擦伤了,对吧?你只需要更换刮坏的东西?我肯定我不知道你在尝试的模式中用这些单引号做什么——你在用什么编程语言?我们只能假设我们正在处理单个的刮片字符串,因此如果您希望我们帮助您进行准确的刮片,您需要提供一些真实的示例文本。