0

plsは以下の例を参照してください。すべての行で、RAが続く文字のみを保持する必要があります。RAまでのすべての値を削除する必要があります。

たとえば、FP:0x33A173D0、RA:0x947BD1Cは0x947BD1Cを生成するはずです。これらの文字のパターンは通常同じで、FP:、2つの空白、16進値、2つの空白のコンマ、そしてRAで始まります。私は自分の仕事でこれを繰り返し行うので、正規表現に非常に慣れていません。誰かが正規表現でこれを行うことを提案しましたが、彼らは方法を知りませんでした。

FP: 0x33A173D0, RA: 0x947BD1C
FP: 0x33A173F0, RA: 0x895AA8C
FP: 0x33A17400, RA: 0x8934DD0
FP: 0x33A17430, RA: 0xA3C6990
FP: 0x33A17438, RA: 0xA3C6C10
FP: 0x33A17448, RA: 0xA3C6F4C
FP: 0x33A17480, RA: 0xA68769C
FP: 0x33A17498, RA: 0xA8097A4
FP: 0x33A174F8, RA: 0x9DE4410
FP: 0x33A17528, RA: 0x8E01CD8
FP: 0x33A17548, RA: 0x8E02D1C
FP: 0x33A17560, RA: 0x8E0497C
4

4 に答える 4

0

正規表現をサポートするテキストエディタ(vim、UltraEditなど)で、

FP: +0x[0-9A-F]+, +RA: +(0x[0-9A-F]+)

と置換する

$1

または、一部の特別なエディター(Crimson Editor、EditPlusなど)では、次のように置き換える必要があります

\1
于 2012-09-10T06:36:34.547 に答える
0

試してみてください:

^(.*?RA: )

一致したグループを空の文字列に置き換えます。または一致:

^.*?RA: (.*)$

最終的なコンテンツを取得します。

于 2012-09-10T06:34:44.943 に答える
0

Pythonの例:

result = re.sub(r"(?m)^.*,\s*RA:\s*", "", subject)

説明:

(?m)    # Multiline mode
^       # Match start of line
.*      # Match any number of characters
,\s*    # Match a comma, followed by optional whitespace
RA:\s*  # Match "RA:", followed by optional whitespace
于 2012-09-10T06:35:12.833 に答える
0

私はあなたがそれらの値を一行ずつ読んでいると仮定します、そしてあなたは使うことができます

.*RA:\s*(.*)$

と置き換えます

$1

ここRegexrでそれを参照してください

于 2012-09-10T06:36:03.927 に答える