0

可能な限り多くの特殊文字\とに一致する正規表現が必要|です。その後、一致を1つの特殊文字に置き換えたいと思います。それらを置き換える方法は知っていますが、できるだけ多くを選択するための正しい正規表現がわかりません。

いくつかのバリエーションを試しましたが、正直なところ、自分が何をしているのかわからず、助けが必要です.

[|+]|[\+]

サンプルデータ:

Hello ||||| this \\ is a test |||

望ましい結果:

Hello . this . is a test .
4

4 に答える 4

2

+外側を持ってきてください。文字クラス内では、それは単なる+記号です。また、次をエスケープし\ます。

[|]+|[\\]+

また、それらすべてを 1 つの文字のみに置き換えようとしているため、次の正規表現を好む場合があります。

[|\\]+

に変わりHello ||\\|| worldますHello . world。最初はそれをHello ... world

デモを見る: http://regexr.com?35ef0

于 2013-07-02T19:56:30.553 に答える
0

これを試して...

"Hello ||||| this || is a test |||".replace(/\|+/g, ".");
于 2013-07-03T13:19:53.200 に答える
0

これを試してください(Javascriptの例):

"Hello ||||| this || is a test |||".replace(/[|]+|[\\]+/g, ".")

出力します:

"Hello . this . is a test ."
于 2013-07-02T19:56:31.257 に答える
0

これは、Javascriptで必要なものを取得しているようです。

'Hello ||||| this |\\| is a test |||'.replace(/(\||\\)+/g, ' . ')
于 2013-07-02T19:56:44.020 に答える