å•題
与ãˆã‚‰ã‚ŒãŸãƒ†ã‚ストã‹ã‚‰URLを抽出ã™ã‚‹ãƒ—ãƒã‚°ãƒ©ãƒ を書ã„ã¦ãã ã•ã„。
ヒント
- æ£è¦è¡¨ç¾ã®ä½¿ç”¨:
- URLã¯ä¸€èˆ¬çš„ã«ç‰¹å®šã®ãƒ‘ターンã«å¾“ã„ã¾ã™ã€‚æ£è¦è¡¨ç¾ã‚’使用ã—ã¦ã“れらã®ãƒ‘ターンを特定ã—ã€URLを抽出ã—ã¾ã™ã€‚
- URLã®ä¸€èˆ¬çš„ãªãƒ‘ターン:
- URLã®ä¸€èˆ¬çš„ãªå½¢å¼ã¯
http(s)://www.example.comã®ã‚ˆã†ã«ãªã£ã¦ã„ã¾ã™ã€‚ã“れã«ãƒžãƒƒãƒã™ã‚‹æ£è¦è¡¨ç¾ã‚’作æˆã—ã¾ã™ã€‚ãŸã ã—ã€URLã®å½¢å¼ã¯å¤šå²ã«ã‚ãŸã‚‹ã®ã§ã€ç”¨é€”ã«ã‚ˆã£ã¦é©åˆ‡ãªæ£è¦è¡¨ç¾ã‚’é¸æŠžã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚
- URLã®ä¸€èˆ¬çš„ãªå½¢å¼ã¯
- æ£è¦è¡¨ç¾ã®ãƒ†ã‚¹ãƒˆ:
- æ£è¦è¡¨ç¾ã‚’テストã™ã‚‹ãŸã‚ã«ã€ã„ãã¤ã‹ã®ã‚µãƒ³ãƒ—ルテã‚ストを用æ„ã—ã¦ãŠãã¨è‰¯ã„ã§ã™ã€‚例ãˆã°ã€HTMLã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã‹ã‚‰URLを抽出ã™ã‚‹å ´åˆã¯ã€HTMLソースã®ä¸€éƒ¨ã‚’使用ã—ã¦ãƒ†ã‚¹ãƒˆã™ã‚‹ã¨è‰¯ã„ã§ã—ょã†ã€‚
- グループ化:
- URLã«ã¯ãƒ—ãƒãƒˆã‚³ãƒ«ã€ãƒ›ã‚¹ãƒˆã€ãƒ‘スãªã©ãŒã‚りã¾ã™ã€‚ã“れらã®éƒ¨åˆ†ã‚’æ£ç¢ºã«æŠ½å‡ºã™ã‚‹ãŸã‚ã«ã€æ£è¦è¡¨ç¾å†…ã§ã‚°ãƒ«ãƒ¼ãƒ—化を使用ã™ã‚‹ã¨ä¾¿åˆ©ã§ã™ã€‚例ãˆã°ã€
(http://)(www\\.)?(example\\.com)ã®ã‚ˆã†ã«ã‚°ãƒ«ãƒ¼ãƒ—を作æˆã—ã¾ã™ã€‚
- URLã«ã¯ãƒ—ãƒãƒˆã‚³ãƒ«ã€ãƒ›ã‚¹ãƒˆã€ãƒ‘スãªã©ãŒã‚りã¾ã™ã€‚ã“れらã®éƒ¨åˆ†ã‚’æ£ç¢ºã«æŠ½å‡ºã™ã‚‹ãŸã‚ã«ã€æ£è¦è¡¨ç¾å†…ã§ã‚°ãƒ«ãƒ¼ãƒ—化を使用ã™ã‚‹ã¨ä¾¿åˆ©ã§ã™ã€‚例ãˆã°ã€
- Matcherクラスã®åˆ©ç”¨:
Patternã‚¯ãƒ©ã‚¹ã§æ£è¦è¡¨ç¾ã‚’コンパイルã—ã€Matcherクラスを使用ã—ã¦ãƒ†ã‚ストã¨ä¸€è‡´ã•ã›ã¾ã™ã€‚find()メソッドを使用ã—ã¦ä¸€è‡´ã‚’見ã¤ã‘ã€group()メソッドã§ã‚°ãƒ«ãƒ¼ãƒ—ã‚’å–å¾—ã—ã¾ã™ã€‚
- é‡è¤‡ã‚’防ã:
- åŒã˜URLãŒè¤‡æ•°å›žå‡ºç¾ã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚‹å ´åˆã¯ã€é‡è¤‡ã‚’防ã仕組ã¿ã‚’考慮ã™ã‚‹ã¨è‰¯ã„ã§ã™ã€‚
ã“れらã®ãƒ’ントを考慮ã—ã¦ã€ç‰¹å®šã®ãƒ†ã‚ストã‹ã‚‰URLを抽出ã™ã‚‹ãŸã‚ã®æ£è¦è¡¨ç¾ã‚’作æˆã—ã€Javaã®æ£è¦è¡¨ç¾æ©Ÿèƒ½ã‚’使用ã—ã¦ãƒ—ãƒã‚°ãƒ©ãƒ を実装ã—ã¦ã¿ã¦ãã ã•ã„。
→解ç”例
「013 クラスライブラリã€å•題集リスト
🎯 実習ã§ç†è§£ã‚’æ·±ã‚よã†
ã“ã®å†…容ã«ã¤ã„ã¦JavaDrillã§å®Ÿéš›ã«æ‰‹ã‚’å‹•ã‹ã—ã¦å¦ç¿’ã§ãã¾ã™


コメント