0

私は次の形式の文字列を取得しようとしています。

著者名による長さ不明の記事タイトル:some.url

そして、単に次のように変更します。

著者名による不明な長さの記事のタイトル:some.url

記事のタイトルをうまく選択できるさまざまなオプションを試しました。

(^.*?by)

そしてそれを私が望むものに置き換えます。例えば私が言うなら

replace [(^.*?by)] with [test title]

上記は次のようになります。

著者名によるテストタイトル:some.url

ただし、\ U $ 1に置き換えようとすると、クエリに一致する文字列だけでなく、文字列全体が大文字になります。

私は何が間違っているのですか?ちなみに、私は完全な正規表現の初心者で、1時間前に始めたばかりですが、どんな助けでも大歓迎です...

4

2 に答える 2

0

この正規表現が「Messing With Abby by Abby: some.url」などと連携するために、guido がその「by」の前後にスペースを含めたことに注意してください。入力にタブなどがある場合は、それらを「\s」に置き換えることができます。ヤフーパイプがどのように機能するかわかりません。ほとんどの場合replace [^(.*)(?= by )] with [\U$1]、トリックを実行します。とにかく、パターン^(.*)( by )(.*)$は入力全体に一致し、3 つの部分に分割されるため、ここから必要なものを再構築する方法replace [^(.*)( by )(.*)$] with [\U$1 by \$3]などを簡単に理解できるはずです。

于 2012-05-29T08:00:42.720 に答える