恐れて定期的な表現に恋をするのをやめる方法

職場や日常生活では、文字通り、本や記事、手紙やチャット、ウェブページ、プログラムコードなどのテキストに囲まれています。なぜ、生物学的生命自体はDNAに基づいています。また、テキストの検索や変更を効果的に行うために、強力なツールが長い間発明されてきました。通常の表現、つまりregexです。ただし、さまざまな理由から、すべてがそれらを使用したり、絶対に必要な場合にのみ強制的処理したりするわけではありませんこの記事では、この悲しい状況を改善しようと思います。









関数を見つけるために、それらを一緒に呼び出し、単一の黒い意志でそれらを偽造します。



基本を理解するのに役立つHabréに関する優れた記事がすでにたくさんあります。





, , .







, . , :







^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$&^()*])[a-zA-Z--0-9!@#$&^()*]{1,}$

      
      





. , . : « , ?».









, regex.





. Notepad++ (, – ).

, Ctrl+f, «Regular expression» !









Notepad++.



1.



(, ) « »











! «».

– . ( «Math Case»), . «», «», «» . , . , . , .







, , – . . , .







最初の一歩が踏み出されましたが、先に進むことを妨げるものは何もありません。









2.ワイルドカード文字



もう1つの一般的な機会-それはワイルドカード(ワイルドカード)アスタリスク「*」です。これは、任意の数の有効な文字を置き換えます。最も一般的な例は、ファイルの検索です。







海辺の休日の写真を探したいとしましょう。これを行うには、検索バーに「* .pngと入力し、フォルダー内のすべての写真のリストを取得します。









 .png
 .png
--, .png
 .png
 , -.png

      
      





すでに良い。アスタリスクの前後に「海」という単語を追加するとどうなりますか?

海* .png



 .png

      
      





* sea.png



--, .png

      
      





次のオプションはあなたが必要とするものを返します:

* sea * .png



 .png
--, .png
 , -.png

      
      





«**.png» — , – - ( «.png» - «»), .







, , , . — «.*».









3. «.*»



– « , 0 ». « ». « ».







, , , , . , : «.*» «.*»»:











215 . …











, . «|»: :

(.*|.*)











, — 213. , , , « , .» .







, , :

(|)











. , . , , . , .







, , regex-.









サルマンは自分の手の力を理解していて、それを恐れていません。したがって、彼は常にすべての問題を認識しています。



4.繰り返しまたは数量詞の数



すでに1つの 数量詞であるアスタリスクに出会っています。金額を設定するには、さらにいくつかの方法があります。

{4} 正確な金額
{1,5} 範囲
{2、} 数から無限大へ
{、 7} 0から数字まで


一般的に使用される範囲には、独自の記号があります。

*または{0、} 任意の量
または{0,1} ゼロまたは1
+または{1、} 少なくとも1つあります


同じ単語が1つの段落で言及される頻度を尋ねましょう:











2 — «(.*){2}» — 7 , — «(.*){3,}» — . «» 3 , «» «» «».









5.



( ) — . «\d», «\w», «[abc], «[1-9], «[.,?:;]».

, , :

«\d+» «\d{1,}» – :











. (37.), (. .) , 4 — \d{4}











1070 , 1421 — 351 .







.















: , , – , — . : . . «Replace»:











これで、おなじみの翻訳で本を読むことができます。ただし、注意してください。検索パターンは、目的の単語だけでなく、目的の単語を含む長いものにも一致する可能性があります。そして、「だちゃ」を「村」に置き換えると、意外と「村」や「テレヴィレッジ」になってしまうことがあります。最初に同じテンプレートを使用して検索を実行し、結果を確認することをお勧めします。より正確な検索のためにテンプレートを複雑にします。「dacha」の場合、単語の前にスペースを追加し、最後にスペースまたは句読点を追加できます:「 dacha [。、!?;:]」。



使用の練習



通常の表現を作成、編集、または探索するには、お好みのオンラインエディターを使用することをお勧めします。私にとって、最も便利なのはREGEX101でした









リングは、内のすべての関数定義見つけたISO C99を、したがって、非常に強力です。



上部に通常の式を入力し、下部に検索するテキストを入力します。エディターは、式の一部にカーソルを合わせると、見つかった一致を自動的に強調表示し、意味を説明するヒントやその他の多くの便利な機能を表示します。置き換えるには、左側のペインで「置換」を選択します。



結論



  • 利便性と作業のスピードアップのために、検索をより頻繁に使用します。

  • 単純なテンプレートを作成してファイルを検索する場合は、アスタリスクを使用してください。
  • 経験を積み、徐々に新しい機能を探求しながら、日常業務で単純な規則表現を使い始めます。


もちろん、この記事は一番上にしか触れていません。多くの便利な機能と起こりうる問題は放置されました。しかし、インターネット上のリファレンスブックやチュートリアルに加えて、regexの世界にもっと徹底的に突入したい場合は、Habréに関する次の記事を読むことができます。





今日では、通常の表現やブラインド印刷方法がなければ、自分の作品を想像することはできません。あなたがしなければならなかったのはそれを使い始めることだけでした。それが私があなたに望むことです。










All Articles