タグ

正規表現に関するshinsakuのブックマーク (9)

  • Smarty で正規表現を if 文で使用する | Sun Limited Mt.

    Smarty には正規表現を使用して文字列を置換する regex_replace があります。 これを上手に使用して if 文で正規表現を用いて条件分岐させます。 if (preg_match('/php/i', 'PHP is the web scripting language of choice.')) { echo 'A match was found.'; } else { echo 'A match was not found.'; } PHP で上記のような処理を Smarty で書くと下記のようになります。 {assign var='string' value='PHP is the web scripting language of choice.'} {if $string|regex_replace:'/.*php.*/i':'php' eq 'php'} A mat

  • 特定の文字列を含まない文字列にマッチする正規表現 - じゅんじゅんのきまぐれ

    2014/01/27 未だにこの記事が検索されるようなので、誤りパターンを目立たないようにしました。 特定の文字列を含まない文字列にマッチする正規表現を考えてみた。 例えば、「xyz」を含まない文字列にマッチする正規表現。 否定先読みで処理すべき(否定先読みが使えない処理系はもうないでしょう) ^((?!xyz).)*$ 行単位でない場合は、前後を適宜修正する必要がある。 否定先読みを使えない場合を考慮すると、 ^(.*xyz.*|(.*))$ で、「$2」を使う。 この方向がシンプルでしょう。 ただ、マッチ数が増えるし、全てマッチしてしまうので、判定が素直じゃない。 それを嫌うなら、たまたま目にした教えてgooの方法ですね。 解説他 たまたま目にした教えてgoo http://oshiete.goo.ne.jp/qa/4522181.html なんか難しいのが書いてあったので、考えてみた

    特定の文字列を含まない文字列にマッチする正規表現 - じゅんじゅんのきまぐれ
  • 正規表現の構文

    正規表現は、通常の文字 (a ~ z など) と、"メタキャラクタ" という特殊文字から構成される文字列のパターンです。パターンによって、テキスト文を検索するときに一致する 1 つ以上の文字列を指定します。正規表現は、検索対象の文字列と文字パターンを一致させるためのテンプレートとして機能します。 正規表現の例をいくつか次に示します。 JScript VBScript 一致結果

    正規表現の構文
  • Smartyでifに正規表現を使う - kawaken’s blog

    Smartyで正規表現を扱うには、regex_replaceを使う。 http://www.smarty.net/manual/ja/language.modifier.regex.replace.php サンプルにあるように、 {$articleTitle|regex_replace:"/[\r\t\n]/":" "} というように書く。この書き方をifの中で使用する。 例えば、abcを含んでいるかのチェックなら、 {if $articleTitle|regex_replace:"/[^(abc)]/":"" ne ""} こんな感じかな。「abc以外を空文字に変換した結果が、空文字ではない」という評価。もっとスマートな方法ありそうだけど。

    Smartyでifに正規表現を使う - kawaken’s blog
  • EmEditor (テキストエディタ) - [^(ab)]のように特定の「文字列以外」とマッチさせる

  • 正規表現で文字列の否定

    入力チェックなどでお世話になる正規表現ですが、これがなかなか奥が深い。複雑な正規表現は一体何をしているのか解析するだけでも一苦労。 この前壁にぶつかったのが 「ある特定の"文字列"を含まないようにチェックをかけたい」 というもの。ある特定の1文字を含まないような正規表現は簡単ですが、文字列となると、これが結構難しい。 たとえば「a」と「b」は含まれていていいけど、「ab」という文字列は駄目という場合。なんとなく ^[^(ab)]+$ でいけそうな気がするけど、これでは駄目。 ちなみに正規表現を試したいときはここのサイトを利用すると便利。どれがマッチしたのかを視覚的に表示してくれるので、とってもわかりやすい。 「ab」の文字列を否定する場合は「b」の前に「a」がないという記述をしないと駄目らしい。ここを参考に。実際の正規表現はこんな感じ。 ^(([^b]|[^a]b)|[^a]a)+$ ちな

    正規表現で文字列の否定
  • PHPのSmartyで以下のことをしたいと思いますが、どうすればいいのでしょうか?…

    PHPのSmartyで以下のことをしたいと思いますが、どうすればいいのでしょうか? 文字列”【あいう】えお”から”あいう”を抽出する。 {【あいう】えお|regex_replace????}のように regex_replaceを使うのかとも思ったが、前後2箇所あるしどうすればいいのか悩んでいます。 もしかして正規表現でマッチさせる(PHPでいうとpreg_match)方法があるんですか? よろしくお願いします。

  • 正規表現の機能の覚書き

    はじめに「はじめての正規表現」がホッテントリ入りしていますが、 導入としては、何に使うのかがわかりやすくて良いのではないかと思います。 あれを見て、基機能をまとめてみたくなったので、正規表現の基的な機能について書いてみます。 (正規表現が初めてという人は「はじめての正規表現」を先に見たほうがいいと思います。) 例では「検索」か「置換」をするものとして話を進めていきます。 (「はじめての正規表現」が実例を中心にしたのに対して、こちらは機能を中心に書きます) 正規表現は、プログラミング言語やその他のツールなど、それぞれで微妙な違い(方言)があるので、その点には注意が必要です。 (表記法が違ったり、ここに紹介する機能がサポートされていなかったり、逆に紹介していない機能をサポートしていたりする場合があります) メタ文字とリテラル文字正規表現には、メタ文字とリテラル文字というものがあります。 メ

    正規表現の機能の覚書き
  • http://higashizm.sakura.ne.jp/reg/

  • 1