ホームページ > バックエンド開発 > PHPチュートリアル > Regex は ASCII アートの垂直の「X」パターンを検出してカウントできますか?

Regex は ASCII アートの垂直の「X」パターンを検出してカウントできますか?

Mary-Kate Olsen
リリース: 2024-11-16 12:15:03
オリジナル
543 人が閲覧しました

Can Regex Detect and Count Vertical

正規表現を使用した ASCII の垂直 X パターンの検索

問題ステートメント

以下のような ASCII 画像内:

....X.......
..X..X...X....
X.X...X..X.....
X....XXXXXX.....
X..XXX...........
.....X..........
..............X
..X...........X....
..X...........X....X...
....X.....
ログイン後にコピー

以下の検出を目指しますパターン:

X
X
X
ログイン後にコピー

3 つの X が縦に並んでいます。

質問

  1. 正規表現を使用してそのような構成が存在するかどうかを判断することは可能ですか?
  2. もしそうなら、その数を数えることは可能ですか?

質問 1 への答え

はい、次の正規表現で垂直方向の X 形成の存在を識別できます:

(?xm)                    # ignore comments and whitespace, ^ matches beginning of line
^                        # beginning of line
(?:
    .                    # any character except \n
    (?=                  # lookahead
        .*+\n            # go to next line
        ( ?+ . )       # add a character to the 1st capturing group
        .*+\n            # next line
        ( ?+ . )       # add a character to the 2nd capturing group
    )
)*?                      # repeat as few times as needed
X .*+\n                  # X on the first line and advance to next line
?+                     # if 1st capturing group is defined, use it, consuming exactly the same number of characters as on the first line
X .*+\n                  # X on the 2nd line and advance to next line
?+                     # if 2st capturing group is defined, use it, consuming exactly the same number of characters as on the first line
X                        # X on the 3rd line
ログイン後にコピー

オンライン デモ: https://regex101.com/r/YxPeXe/1

質問 2 の答え

間接解

フォーメーションの数を数えるには、次の置換を実行できます:

regex => 
ログイン後にコピー

ここで正規表現上記のパターンです。結果の文字列の長さは一致の数と等しくなります。

オンライン デモ: https://regex101.com/r/Tx6R63/1

以上がRegex は ASCII アートの垂直の「X」パターンを検出してカウントできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート