NotePad ++-^が見つからないのはなぜですか?


16

TextPadから離れようとしていますが、正規表現を取得したり^$置き換えたりすることはできません。私は間違いなく正規表現ボックスにチェックを入れました。

私は何を間違えていますか?

新しい行の始まりを見つけようとしています。TextPadでは、「^」が検出され、正規表現が有効になっていることを確認します。Notepad ++では、それを行いません。「見つかりません」と表示されます。


私はTextPadを使用しましたが、これと同じ問題が(やさしく言えば)迷惑であることがわかりました。基本的には、Nppに正規表現の機能はされていじけ他のほとんどの正規表現-sのcomaredとき。これは、Nppが単一行ベースのRegExを使用するScintilla Editorの抽象化であるという事実に由来します。(時間とリソースの問題)。$は機能しますが、^複数行で動作する(まだ)がありません。この制限を知っており、動作します(そして回避します)。 (まれに、TPadまたはUltraEditに戻ります)
-Peter.O

1
PS。多くの場合、拡張(vs RegEx)を\ rおよび\ nの回避策として使用できます。これは、行の始まりを準模倣します。また、副次的な方法として、通常の検索を続けて、[表示]-[シンボルの表示]-[行の終わりを表示]をオンにすることができます。最初にCRLFを押すと、Ctrl + Fキーを押すと検索フィールドの自動プライムが開始され、幸いにも複数行(正規表現ではなく)検索になります。拡張検索とそれほど違いはありませんが、興味深いことに気付きましたし、読者の中にもそう思うかもしれません。(Nppが大好き:)
Peter.O

なぜあなたは新しい行の始まりを見つけようとしているのですか?すべての行の先頭に何かを追加しますか?これは、実際に質問に答えるのに役立ちます。有料ソリューションから移行するためにNotepad ++を使用している場合は、その癖を覚えて回避する必要があります。Notepad ++は他の多くの点で非常に優れているため、これを行うのに問題はありませんでした。
ジョシュアヌルジク

回答:


25

^と$はどちらも正規表現のアンカーです。つまり、リテラル文字を置き換えたい場合、通常はバックスラッシュ(、および)でエスケープする必要が^あり$ます。\^\$

行の最初の文字を見つけるには ^.

開始行のアンカー(^)はゼロ幅の一致であるため、と組み合わせます。行の先頭にある文字を検索します。

たぶん、あなたが実際にやろうとしていることを説明できますか?


8

これらは、フロント(^)および行末()を表す特殊文字であるため$です。でエスケープしてみてください\

例:

行の先頭で「猫」と一致します。

^Cat

行末の「猫」に一致する:

Cat$

行の唯一のものとして「猫」に一致します。

^Cat$

行内の「$ 100」と一致します。

\$100 

以下に、Notepad ++内での正規表現マッチングの詳細へのリンクを示します。


2
リンクは(事実上)壊れているようです。
ピーターモーテンセン

5

私自身も同じ問題を抱えています。試行錯誤の後、次の操作を行うことで同じことを実現できます。

検索:^(。)

置換:[挿入する文字列] \ 1

これは、行の最初の文字を見つけてタグ付けし、新しい文字列を挿入して、タグ付けされた文字をその後に配置します。

たとえば、各行の先頭に一重引用符を挿入する必要がありました。

検索:^(。)

置換:'\ 1

以下を実行することにより、行末でも同じことができます。

検索:(。)$

置換:\ 1 * [追加する文字列] *


1

わかった。

  • Albert@hotmail.com
  • Lucas@gmail.com
  • Rober_Klein@aol.com
  • Fisher@zmail.com

  • アルバート
  • ルーカス
  • Rober_Klein
  • フィッシャー

文字またはテキストの後に削除

@(。*)$

文字またはテキストの前に削除します

^(。*)@

dot = any character
asterisk = zero or more times

1

方法は次のとおりです...

前:

$_GET['id']; $_GET['nick'];

後:

htmlentities($_GET['id']); htmlentities($_GET['nick']);

そう。上の検索フィールドプット:

$_GET(.*])

オン交換する場プット:

htmlentities($_GET\1)

0

この問題は現在修正されているようです。

Notepad ++ v6.9.2(Windows 7で実行^)では、$(行の先頭)と(行の末尾)の両方が機能します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.