我有这个字符串:
Fuel surcharge
我想变成
fuel_surcharge
使用正则表达式。我匹配的正则表达式看起来像这样
\b([A-Z])|(\s)
它给了我需要的两场比赛。
然后我尝试使用此替换正则表达式
\L\1_\2
根据逻辑,第一场比赛应改为小写,第二场比赛应改为_
但我给出的结果是
f_uel_ surcharge
我看起来好像无法隔离第二场比赛。我是否需要将_
括在替换正则表达式中?
Here是我在regex101.com
上尝试的正则表达式的链接。目前正则表达式为pcre
,但我可能希望在Java
中使用它。
答案 0 :(得分:0)
\b([A-Z])([a-z]*)(\s)
\L\1\2_
在第一个两个匹配后,你想要下划线。