- ベストアンサー
正規表現:頭文字以外小文字に変換
ORUKA1951の回答
- ORUKA1951
- ベストアンサー率45% (5062/11036)
正規表現は様々な書式があります。私が示したのは、ごく一般的な方法です。 意味を理解していないと。 \bは通常単語境界を示します。 []で括られた部分は範囲を示します。a,b,c,dと書く代わりにa-d ()は後方参照のためのものです。 *は0文字以上 +は1文字以上 ?を付けると最小マッチ 単語境界が明確かどうかわからないので、私は [a-zA-Z]としましたが、大文字だけなら[A-Z}ですが、これは問題にはならないはずです。 なぜなら、次に後方参照で()を前から順番に\1,\2としていますから・・ ([A-Z])([A-Z]*) でよいですが、すべての英単語ならa-bも含めてください。 後方参照が利かないのは、エスケープが有効になっていない可能性、後方参照の記号が異なる。たとえばperlでしたら$1,$2,$3ですよね。 また、DWに、大文字/小文字の切り替えスイッチが実装されていないなら、変換はできないでしょう。そのあたりはDWの正規表現のマニュアルをご覧ください。
関連するQ&A
- 困ってます:頭文字以外小文字に変換
長い間自分で考えたのですが、分からずに困っています。ご存知の方がおられましたらご教授ください。 Dreamwaver MX2004を使用しています。 「検索および置換」機能を利用してHTMLファイルに全て大文字のアルファベットで記載されている単語(国名)を各単語の頭文字以外小文字に変換したいのです。検索窓には「(\b[A-Z]+\b)」と入力すると全て大文字の単語が検索できました。問題はどのような正規表現を「置換」窓に入れればよいのでしょうか? 不可能な場合は、その旨をお伝え下さい。 よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- 英単語が誤って空白で区切られたのを正規表現で除く
英語の文章を紙媒体からスキャンして電子化しました。その際に、斜体が含まれていたり、何らかの事情で英単語がスペースで区切られてしまっている場合があります。これを取り除くのが最終的な目的です。例えば I l o v e New York. といったようにです。 正規表現による置換での処理をまず思いつき、 置換前 スペース[a-z]スペース 置換後 スペース[a-z] としてみたら、[a-z]に当たる部分が置換後には元の文字から[a-z]となってしまい、あいまい検索でヒットしたのはよいものの、置換後は元の文字を維持してくれませんでした。 第一の質問として、[a-z] や [0-9]といった表現を含む置換の場合、元の文字をそのままに、それ以外の部分を置換することは可能なのでしょうか? 第二に、I l o v e New York. を I love New York. とするにはどうしたら良いのでしょうか?処理が完全でなくても、以前よりも読みやすくなれば構いません。 よろしくお願いします。
- ベストアンサー
- その他(インターネット・Webサービス)
- 正規表現について
正規表現について質問をさせていただきます。 VB6.0にて正規表現を使用し、入力された文字のチェックを行っていますが どうしてもうまくいきません。 チェックしたい文字は A(半角アルファベット大文字1文字)または AAA(半角アルファベット大文字3文字)または (AAA)(半角カッコつき半角アルファベット大文字3文字)で 上記3パターン以外はエラーとしたいと思っています。 パターンは下記のように作成したのですが "(^[\(][A-Z]{3}[\)])|(^[A-Z]{1,3})" A、AAA、(AAA)以外でもA(AA)やAAAA等も正常ケースとして通過してしまいます。 パターンをどのように作成すればよいか教えて下さい。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- 正規表現でパスワードのチェック
8文字以上で、アルファベット大文字、アルファベット小文字、記号を最低1つずつ含んでいるか、というチェックを正規表現で行いたいと考えています。 以下のようにしているのですが、うまくいきません。間違っているのでしょうか? ^(?=.{8,})(?=[a-z]+)(?=[A-Z]+)(?=[~!#$%^&`*+;:"'?/|{}.=_,-]+).+$ また、使用しているのは、Jakarta-OroのPerl5Utilです。 使用しているライブラリが悪いのでしょうか?
- ベストアンサー
- Java
- 秀丸の正規表現
秀丸の正規表現 http://pc.dearie.jp/hidemaru/replace/14.html 上記URLでメールの正規表現について解説があります。 [A-Za-z0-9\-\.\_]+@[A-Za-z0-9\-\_]+\.[A-Za-z0-9\-\.\_]+ この正規表現でメールの検索をおこなっています。この正規表現は理解出来ます。 .*([a-z0-9\-\.\_]+@[a-z0-9\-\_]+\.[a-z0-9\-\.\_]+)([^a-z0-9@\.\-\_]+).* キャプチャを使って正規表現でメールアドレスをマッチしているのは理解できます。 なぜ置換で、「\1,」とやっても、メールアドレスのみを取得できないのでしょうか? 実際に秀丸エディタを使ってやってみましたが、メールアドレスのみ取得することができませんでした。 検索ではメールアドレスにマッチするのに、なんでキャプチャが正しく動かないのかがわかりません・・・
- ベストアンサー
- その他([技術者向] コンピューター)
- 正規表現を教えて下さい(テキストエディタでの置換)
いつもお世話になっております。 正規表現に関して細かい質問をさせて下さい。 例えば、G-01,T-02,F-05とあったときに、 これを、01,02,05としたいとき、 正規表現の置換で「[A-Z]-[0-9][0-9]」→「[0-9][0-9]」とすると、 "[0-9][0-9]"という文字列だけ残ってしまいます。 既存の文字列をそのまま残すにはどのようにしたらよいでしょうか? ※テキストエディタでの置換に関してです。 宜しくお願い致します。
- ベストアンサー
- PHP
- Dreamweaver MX 2004 検索置換を正規表現で 訂正版
08/11/10 18:40に「Dreamweaver MX 2004 検索置換を正規表現で」という質問をしてますが、質問のないように誤りがありましたので、訂正版のスレッド(本スレッド)を作成します。 Dreamweaver MX 2004を使用しています。 検索は、正規表現で行なえるのですが、置換の入力欄に入力した正規表現がうまく働きません。 例: 検索対象: 「あいうえお」 「かきくけこ」 置換後: <あいうえお> <かきくけこ> 「検索および置換」ダイアログの「検索」入力欄に 「(.+)」(「」も入力) と入力する。 「検索および置換」ダイアログの「置換」入力欄に <\1>(<>も入力) と入力する。 この場合、検索対象はすべて検索されるが、置換ボタンを押すと <\1>(<>も置換後の文字列に含む) と置換されてしまう。 どのようにすれば、正規表現を利用した検索置換が正常に行なえるでしょうか? 詳細な解説が記載してあるサイトのURL等でも結構です。 よろしくお願いします。
- ベストアンサー
- ホームページ作成ソフト
- 正規表現で特定文字に挟まれた範囲内での検索
VS CODE にて文字列の正規表現で文字列(プログラムではありません)の検索をしたく質問いたします。 (A B C)<A B C> という文字列があり、この中の半角スペースを別の文字に置換したいのですが、全ての空白ではなく( )に挟まれた中の半角スペースだけを検索したいと思っています。 ↑の用な文字列から( )内の半角スペースだけを照らし出す正規表現を教えていただいていただけると嬉しいです。
- ベストアンサー
- その他(プログラミング・開発)
補足
ORUKA1951さん ご回答、ありがとうございました。 検索窓 \b([A-Z])([A-Z]*) 置換窓 $1\L$2\E で試しました。 結果は、「AFGHANISTAN」が「A\LFGHANISTAN\E」となりました。 Peggyというエディターでも試しましたが、うまくいきません。