0

次のケースをキャッチするために正規表現を書くのに助けが必要です:

number*numberのように1242*1242または333*333。の両側は*同じ番号ですが、長さが異なる場合があります。

4

2 に答える 2

4

これはOferの答えを修正するでしょう:

\b(\d+)\*\1\b

説明:

\b - word boundary
( - start capturing group
\d+ - digits (one or more)
) - stop capturing group
\* - literal *
\1 - matches exactly what is captured by group 1
\b - word boundary
于 2012-07-19T07:56:35.207 に答える
1

ここにあります:

(\d+)\*\1

右側が左側と同じであることを保証します。

編集

誤検知がないことを確認するには(正しくプログラミングすればこれが問題になるかどうかは議論しますが)、このバージョンを使用します(Eugeneのものとは少し異なり、もう少しエレガントです)。

\b(\d+)\*\1\b

于 2012-07-19T07:49:17.930 に答える