正規表現による検索/置換を使用して、文字列から余分な小数点を削除したい。
例えば :
<xml_taga>145.3345542123</xml_taga>
<xml_tagb>125.1245471</xml_tagb>
<xml_tagc>42.12</xml_tagc>
次のようになります:
<xml_taga>145.33</xml_taga>
<xml_tagb>125.12</xml_tagb>
<xml_tagc>42.12</xml_tagc>
私が最も遠くまで到達したのはこの表現です
(\.\d{3,12})
どのような助けでもいただければ幸いです。
答え1
- Ctrl+H
- 検索対象:
(?<=\d\.\d\d)\d+
または\d\.\d\d\K\d+
- と置換する:
LEAVE EMPTY
- Replace all
説明:
(?<= : start lookbehind, make sure we have
\d\.\d\d : a digit, a dot and 2 digits
) : end lookbehind
\d+ : 1 or more digits
他の選択肢:
\d\.\d\d : a digit, a dot and 2 digits
\K : forget what we have seen until this point
\d+ : 1 or more digits
- 正規表現をチェックする
与えられた例の結果:
<xml_taga>145.33</xml_taga>
<xml_tagb>125.12</xml_tagb>
<xml_tagc>42.12</xml_tagc>
答え2
正規表現による検索/置換を使用して、文字列から余分な小数点を削除したい。
メニュー「検索」>「置換」(またはCtrl+ H)
「検索対象」を に設定します
(\d+\.\d\d).*<
。「置換」を次のように設定します
\1<
「正規表現」と「改行に一致」を有効にする
「すべて置換」をクリック
前に:
<xml_taga>145.3345542123</xml_taga>
<xml_tagb>125.1245471</xml_tagb>
<xml_tagc>42.12</xml_tagc>
後:
<xml_taga>145.33</xml_taga>
<xml_tagb>125.12</xml_tagb>
<xml_tagc>42.12</xml_tagc>