「
正規表現 課題集
」を編集中
2007年10月17日 (水) 19:58時点における
192.168.200.244
(
トーク
)
による版
(
差分
)
← 古い版
|
最新版
(
差分
) |
新しい版 →
(
差分
)
ナビゲーションに移動
検索に移動
警告: このページの古い版を編集しています。
公開すると、この版以降になされた変更がすべて失われます。
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
<div id="problem"> ==基本編== <div class="section"> ===問題 1-1=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> abc123defあいうえお </pre> </dd> <dt>内容</dt> <dd>全ての文字を1文字ずつaに変える</dd> <dt>結果</dt> <dd class="txt-data"> <pre> aaaaaaaaaaaaa </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> . ↓ a </pre> </dd> </dl> </div> <div class="section"> ===問題 1-2=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> abc123defあいうえお </pre> </dd> <dt>内容</dt> <dd>3桁の数字をhitに変える</dd> <dt>結果</dt> <dd class="txt-data"> <pre> abchitdefあいうえお </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> \d{3} ↓ hit </pre> </dd> </dl> </div> <div class="section"> ===問題 1-3=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> abc123abc123abc123 </pre> </dd> <dt>内容</dt> <dd>最初のabcだけをdefに変える</dd> <dt>結果</dt> <dd class="txt-data"> <pre> def123abc123abc123 </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> ^abc ↓ def </pre> </dd> </dl> </div> <div class="section"> ===問題 1-4=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> abc123defあいうえお あいうえおabc123def abc123defあいうえお </pre> </dd> <dt>内容</dt> <dd>abcから始まる行をABCに変える</dd> <dt>結果</dt> <dd class="txt-data"> <pre> ABC あいうえおabc123def ABC </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> ^abc.*$ ↓ ABC </pre> </dd> </dl> </div> <div class="section"> ===問題 1-5=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> line1 line2 line3 </pre> </dd> <dt>内容</dt> <dd>/で一行に連結する</dd> <dt>結果</dt> <dd class="txt-data"> <pre> line1/line2/line3 </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> (\r\n|\r|\n) ↓ / </pre> </dd> </dl> </div> <div class="section"> ===問題 1-6=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> 佃煮・漬物 調味料・だし おかず・おつまみ その他 魚介・海産物 乾物・お茶・デザート 肉・ソーセージ </pre> </dd> <dt>内容</dt> <dd>行頭に「味百選>アイテムから探す>」を足す</dd> <dt>結果</dt> <dd class="txt-data"> <pre> 味百選>アイテムから探す>佃煮・漬物 味百選>アイテムから探す>調味料・だし 味百選>アイテムから探す>おかず・おつまみ その他 味百選>アイテムから探す>魚介・海産物 味百選>アイテムから探す>乾物・お茶・デザート 味百選>アイテムから探す>肉・ソーセージ </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> ^ ↓ 味百選>アイテムから探す> </pre> </dd> </dl> </div> <div class="section"> ===問題 1-7=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> if(val > 5){ i=12; } </pre> </dd> <dt>内容</dt> <dd>行末のタブのみ削除</dd> <dt>結果</dt> <dd class="txt-data"> <pre> if(val > 5){ i=12; } </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> \t*$ ↓ </pre> </dd> </dl> </div> ==グルーピング編== <div class="section"> ===問題 2-1=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> 番号1 81064 番号2 81079 番号3 81080 番号4 81081 番号5 81082 </pre> </dd> <dt>内容</dt> <dd>数字を全て9桁にする(頭を0で埋める)</dd> <dt>結果</dt> <dd class="txt-data"> <pre> line1/line2/line3 </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> (\d{5}) ↓ 000$1 ================ ^(\d) ↓ 000$1 </pre> </dd> </dl> </div> <div class="section"> ===問題 2-2=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> <p><a href="http://www.foo.example.com/">"まとめサイト"</a></p> </pre> </dd> <dt>内容</dt> <dd>href要素がどんなURLでも、http://192.168.200.60:16080/kds_tko/に置き換える処理</dd> <dt>結果</dt> <dd class="txt-data"> <pre> <p><a href="http://192.168.200.60:16080/kds_tko/">"まとめサイト"</a></p> </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> href="[^"]*" ↓ href="http://192.168.200.60:16080/kds_tko/" </pre> </dd> </dl> </div> <div class="section"> ===問題 2-3=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> タカシマヤ 三越 伊勢丹 高島屋 </pre> </dd> <dt>内容</dt> <dd>「高島屋」と「タカシマヤ」の後に「オンラインショッピング」を加える</dd> <dt>結果</dt> <dd class="txt-data"> <pre> タカシマヤオンラインショッピング 三越 伊勢丹 高島屋オンラインショッピング </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> (タカシマヤ|高島屋) ↓ $1オンラインショッピング </pre> </dd> </dl> </div> ==否定の先読み・否定の戻り読み編== <div class="section"> ===問題 3-1=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> 高島屋 高島屋通信販売 </pre> </dd> <dt>内容</dt> <dd>高島屋のみをタカシマヤに変換する</dd> <dt>結果</dt> <dd class="txt-data"> <pre> タカシマヤ 高島屋通信販売 </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> 高島屋(?!通信販売) ↓ タカシマヤ </pre> </dd> </dl> </div> <div class="section"> ===問題 3-2=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> ■名前 初音ミク ■住所 高山くんち ■電話番号 110-119-117 </pre> </dd> <dt>内容</dt> <dd>■から始まる行以外の行頭にインデントを入れる</dd> <dt>結果</dt> <dd class="txt-data"> <pre> ■名前 初音ミク ■住所 高山くんち ■電話番号 110-119-117 </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> ^((?!■).*)$ ↓ \t$1 </pre> </dd> </dl> </div> <div class="section"> ===問題 3-3=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> <div class="campaign"> <dl class="clearfix"> <dt><img src="top/img/icon_campaign.gif" width="52" height="13" alt="キェンペーン" title=""></dt> <dd class="date">2007年10月17日</dd> <dd><a href="/shopping/campaign/index.html">「高島屋のお歳暮」オープン。人気のバッグを始め、各種お買上げキャンペーン実施中。</a></dd> </dl> <dl class="clearfix"> <dt><img src="top/img/icon_campaign.gif" width="52" height="13" alt="キェンペーン" title=""></dt> <dd class="date">2007年10月17日</dd> <dd><a href="/shopping/campaign/index.html">「魍魎の匣」・「サーフズ・アップ」特別鑑賞券プレゼントキャンペーン実施中。</a></dd> </dl> <dl class="clearfix"> <dt><img src="top/img/icon_news.gif" width="52" height="13" alt="お知らせ" title=""></dt> <dd class="date">2007年10月17日</dd> <dd><a href="/shopping/guide/member/index2.html#member12">ギフトお申し込み履歴サービス ・お届け先 事前登録代行サービスをご利用いただけます。</a></dd> </dl> <p class="to-list"><img src="common/img/arrow_red.gif" width="8" height="9" alt="" title=""><a href="campaign/index.html?shoptop">キャンペーン・お知らせ一覧へ</a></p> </div> </pre> </dd> <dt>内容</dt> <dd>href属性を含まない行は削除する</dd> <dt>結果</dt> <dd class="txt-data"> <pre> <dd><a href="/shopping/campaign/index.html">「高島屋のお歳暮」オープン。人気のバッグを始め、各種お買上げキャンペーン実施中。</a></dd> <dd><a href="/shopping/campaign/index.html">「魍魎の匣」・「サーフズ・アップ」特別鑑賞券プレゼントキャンペーン実施中。</a></dd> <dd><a href="/shopping/guide/member/index2.html#member12">ギフトお申し込み履歴サービス ・お届け先 事前登録代行サービスをご利用いただけます。</a></dd> <p class="to-list"><img src="common/img/arrow_red.gif" width="8" height="9" alt="" title=""><a href="campaign/index.html?shoptop">キャンペーン・お知らせ一覧へ</a></p> </div> </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> ^(?:(?!href=").)*$ ↓ ================ ※サクラエディタで試す場合は ^(?:(?!href=").)*\r\n </pre> </dd> </dl> </div> ==応用編== ==上級編(複数回置換)== <!-- template <div class="section"> ===問題 1-1=== <dl> <dt>文字列</dt> <dd class="txt-data"> <pre> before </pre> </dd> <dt>内容</dt> <dd></dd> <dt>結果</dt> <dd class="txt-data"> <pre> after </pre> </dd> <dt class="answer-title">解答[表示]</dt> <dd class="answer"> <pre> match ↓ replace </pre> </dd> </dl> </div> --> </div>
編集内容の要約:
Wiki@KDSへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
Wiki@KDS:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
キャンセル
編集の仕方
(新しいウィンドウで開きます)
案内メニュー
個人用ツール
ログインしていません
トーク
投稿記録
アカウント作成
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
編集
履歴表示
その他
検索
案内
メインページ
最近の更新
おまかせ表示
MediaWikiについてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報