正则表达式

用户2981411

我想知道是否有人可以提供帮助。如果最后一个单词是字母数字(数字和字母)或单个数字或单个字母,我需要编写一个正则表达式,该表达式将丢弃除最后一个单词之外的所有内容。

例如

一楼公寓2

花园公寓1A

块 2D

套房 12

C单元

地下室公寓

办公厅

我想删除所有不属于实际数字的单词和字符,即

一楼公寓2应该变成2

花园公寓1A应该变成1A

块 2D 应该变成 2D

套房 12 应该变成 12

C单元应该变成C

地下室公寓应为空白,因为不涉及数字

综合办公室应该变成空白

提前谢谢了

第四只鸟

您可以尝试使用积极的前瞻,它在字符串的末尾断言您的要求。

(?:\b[A-Za-z]{1}|\d+|(?=.*\d)[a-zA-Z0-9]+)$

解释

  • 非捕获组 (?:
  • 一个词的边界 \b
  • 匹配单个字母 [A-Za-z]{1}
  • 或者 |
  • 一位或多位数字 \d+
  • 或者 |
  • 断言最后一个单词包含数字的正向前瞻 (?=.*\d)
  • 匹配一个或多个小写/大写字符或数字 [a-zA-Z0-9]+
  • 关闭非捕获组 )
  • 字符串的结尾 $

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章