当前位置: 代码迷 >> java >> 如果字符串包含 '$' 字符,则将其替换为空
  详细解决方案

如果字符串包含 '$' 字符,则将其替换为空

热度:50   发布时间:2023-07-17 20:28:47.0

我有一个多行字符串,如果该行包含 '$' 字符,我想删除字符串中的一行。

示例字符串:- <ecm:Field name="X_LastMobileNumChange_detail">NA</ecm:Field> <ecm:Field name="X_ModeOfOperation">SELF</ecm:Field> <ecm:Field name="X_DrawingPower">210000.0000</ecm:Field> <ecm:Field name="${/ecmi/}"></ecm:Field> <ecm:Field name="X_DrawingPower">210000.0000</ecm:Field>

所以上面的字符串是一个示例字符串。 所以在这种情况下,我想删除第 4 行,因为它包含“$”。 有人可以帮我写正则表达式吗?

s = s.replaceAll(".*\\$.*(\\R|$)", "");
  • \\R匹配行尾( \\n\\r\\n或其他一些)。
  • \\\\$匹配美元符号本身。
  • . 任何字符,默认情况下但不是换行符。
  • (\\\\R|$)最后一行不需要以换行符 $ = 字符串结尾结束。
  相关解决方案