我想要匹配,以下情况:
1。获取两者之间或者只有一个x
存在结束
示例:
| Matches/Cases | Result |
|-------------------|--------|
| 200 x 90 x 14 | 90 |
| 90x200 | 200 |
| 200 x 90x20 | 90 |
| 60,4 x46,5 x 42,6 | 46,5 |
| 90x190,9 | 190,9 |
2。如果最后一个x
存在,并且只有一个存在,则
示例:
| Matches/Cases | Result |
|-------------------|--------|
| 200 x 90 x 14 | 14 |
| 90x200 | - |
| 200 x 90x20 | 20 |
| 60,4 x46,5 x 42,6 | 42,6 |
| 90x190,9 | - |
我坚持得到一个特定的案例!我尝试使用以下正则表达式x\s?((\d+(?:,\d+)?))\s?
进行匹配,但我仍然只得到90x200
200
的案例的最后一部分,但是对于200 x 90 x 14
,我得到90 x 14
{1}}。
对案例1或案例2有效的两个正则表达式的任何建议吗?
感谢您的回复!
答案 0 :(得分:1)
将评论转化为答案 对于第一种情况,您可以使用:
[\d,]+\h*x\h*([\d,]+)(?:\h*x*[\d,]+)?
<小时/>
第二个:
[\d,]+\h*x\h*[\d,]+\h*x\h*([\d,]+)
<小时/>
提示 :如果不支持\h
或[ ]*
,请将\s*
替换为<{1>}。
答案 1 :(得分:1)