文字列の途中の数字を削除する

文字列の途中の数字を削除する

正規表現による検索/置換を使用して、文字列から余分な小数点を削除したい。

例えば ​​:

<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>

参考文献

関連情報