私はñíóúü
のようなUTF-8のアルファ文字を照合するためにルビの正規表現を構築しようとしています。/\p{Alpha}/i
の作品と/\p{L}/i
の違いは何ですか?ルビーの/ p {Alpha}/iと/ p {L}/iの違いは何ですか?
答えて
これらは同等のようです。 (編集:時々、この答えの最後を参照してください)
バージョン1.9からRubyが\p{Alpha}
をサポートしているようです。 POSIXでは\p{Alpha}
は\p{L&}
(Unicodeをサポートする正規表現の場合はsee here)に等しい。これは、大文字と小文字のバリアント(see here)を持つすべての文字に一致します。彼らは\p{L}
で試合になるだろうがUnicase文字は(一致しないでしょう
これはRuby用の真実であるとは思えません(アラビア語がunicaseアルファベットを持っているので、私は、ランダムなアラビア語の文字を選んだ):。
- 予想通り
\p{L}
(any letter) matches. - Case-sensitive classes
\p{Lu}
,\p{Ll}
,\p{Lt}
don't match.。 p{L&}
doesn't match.予想通り。\p{Alpha}
matches.
\p{Alpha}
がRubyの\p{L}
のエイリアスに過ぎないことを示す非常に良いと思われます。 Rubularでは、\p{Alpha}
がRuby 1.8.7で利用できなかったことも分かります。
修飾子は、いずれの場合も大文字と小文字の両方に一致するため、\p{Alpha}
と\p{L}
の両方が一致しないことに注意してください。
EDIT:
ヘクタール、違いがあります! Rubyの新しい正規表現エンジン(上記のRuby 1.9で使用中)に関するthis PDFが見つかりました。 \p{Alpha}
は、エンコーディングに関係なく使用できます(Unicodeをサポートしていない場合は[A-Za-z]
)。\p{L}
は特にUnicodeプロパティです。つまり、\p{Alpha}
はPOSIX正規表現とまったく同じように動作しますが、ここでは\p{L}
に対応しますが、POSIXでは\p{L&}
に対応します。
ありがとうございます。私はあなたが 'i'修飾子について指摘したことを理解しています。 –
@BishmaStornelli私はまったく正しいとは思わなかったようです。私の編集を参照してください;) –
もう一度ありがとうございます。いい答え。 –
- 1. x = * p ++と* p ++の違いは何ですか; x = * p in c?
- 2. ポインタの* p、** p、*** pの違いは何ですか?
- 3. Cの "char * p"と "char * p"の違いは何ですか?
- 4. int(* p)[3]とint * p [3]の違いは何ですか?
- 5. perl -dのxとpの違いは何ですか?
- 6. "perl -n"と "perl -p"の違いは何ですか?
- 7. のNUnit Assert.Equals <p>の違いは何ですか?</p>
- 8. liとp horzontalのアライメント
- 9. TinyMCEのLiとPタグ
- 10. 文字列一致とパターンマッチャークラスの違いは何ですか?偽</p> <p>から
- 11. 「の違いは何ですか</p> <p>「として「「JavaScriptで引用符
- 12. Webpackの-pとは何ですか?
- 13. bashの ">"と "&>"の違いは何ですか?いくつかのプログラムを実行しながら、私が管理を使用することができ、</p> <ul> <li>0(STDIN)</li> <li>1(STDOUT)</li> <li>2(STDERR)</li> </ul> <p>ので:bashで
- 14. WPFのHorizontalAlignmentとHorizontalContentAlignmentの違いは何ですか? WPFのテキストボックスに</p> <ul> <li><code>HorizontalAlignment="Stretch"</code></li> <li><code>HorizontalContentAlignment="Stretch"</code></li> </ul> <p>:
- 15. 「http:// localhost:8080/apex/f?p = 4950」と「http://127.0.0.1:8080/apex」の違いは何ですか
- 16. ブラウザ私は2つのアプリケーション</p> <p>1ルビー(私が書かれていない。私はルビーの何も理解していない)と他のASP.Net</p> <p>Rubyのアプリは、ユーザーのIPアドレスを決定してい
- 17. connection.Close()とconnection.Dispose()の違いは何ですか? <code>SQLiteDataReader</code>オブジェクトの</p> <ul> <li><code>Close()</code></li> <li><code>Dispose()</code></li> </ul> <p>同じ:
- 18. ?</p> /../ <br> ./../ <br> <p>との違いは何かファイルフォルダを変更するための
- 19. 私のアプリを構築するAndroidのデバイスアーキテクチャは何ですか?私がすべき</p> <ul> <li>armeabi</li> <li>armeabi-v7a</li> <li>のx86</li> </ul> <p>何アーキテクチャ(S):Android用
- 20. &と&&、|の違いは何ですか? || R?</p> <pre><code>&, && |, || </code></pre> <p>用法の違いを何:
- 21. ニュースフィードへの私のアプローチが間違っている方法は何ですか?</p> <p>私は」...
- 22. mkdirとmkdir -pの違いは?
- 23. completablefuture参加対CompletableFuture.get()とCompletableFuture.join()の違い</p> <p>以下は私のコードでは何
- 24. 弾性マップ縮小:CANCEL_AND_WAITとCONTINUEの違いは?</li> </ul> <p>TERMINATE_JOB_FLOWがデフォルトです</p> <ul> <li>TERMINATE_JOB_FLOW</li> <li>はCONTINUE</li> <li>CANCEL_AND_WAIT:
- 25. catとypcatの違いは何ですか?</p> <blockquote> <p>猫/ etc/passwdファイル</p> </blockquote> <p>と</p> <blockquote> <p>ypcatのpasswdを</p> </blockquote> <p>:
- 26. void * p =&iとは何ですか?
- 27. カフカの__consumer_offsetsトピックと_schemaトピックの使用方法は何ですか?重要性と使用は何</p> <ol> <li>__consumer_offsets</li> <li>_schema</li> </ol> <p>:
- 28. 違いは</p> <pre><code>BYTE* p; </code></pre> <p>と</p> <pre><code>BYTE^ p; </code></pre> <p>の違いは何ですかポインタ
- 29. モバイルアプリケーションに最適なリモーティング技術は何ですか?私は最善を探しています</p> <ul> <li>J2ME</li> <li>のWindows Mobile</li> <li>iPhone</li> </ul> <p>:
- 30. マップの違いは何であるとルビーで
これは奇妙です。 [この比較](http://www.regular-expressions.info/refflavors.html)によると、前者はRubyで利用できないはずです。 –
私は自分のレールコンソールで両方を使用しているので、古いものでなければなりません。 –
古くなったようです。 RubyはIIRCの1.9で新しいRegexエンジンを使用し始めました。 – Chowlett