- ベストアンサー
< と > で囲まれた文字の取り出し
例えば、$str = "abcdefg<hijklmn>" というような文字列を $str = "hijklmn" というような文字列に変更するにはどのような 正規表現を書けばよいでしょうか? お知恵をおかしください。お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1001589 を応用すればいいのでは。 $str =~ s/<(.*)>//; $str = $1; みたいに。
その他の回答 (2)
- sisya
- ベストアンサー率39% (97/244)
回答No.3
上の条件に限って言えば $str =~ s/^[^<]*<([^>]*>.*$/$1/; といったところでしょうか? 取り出したい文字列が半角英数にかぎるのでしたら、 No2の方の回答でよいかと思います。
質問者
お礼
無事解決できました。どうもありがとうございました。
- yatokesa
- ベストアンサー率40% (201/496)
回答No.2
$str =~ s/\w*<(\w+)>.*/\1/g; 条件付けが曖昧ですが、とりあえずこれで変換できます。
質問者
お礼
ご回答ありがとうございました。 問題は無事解決できました。
お礼
参考URLを応用した結果 ($a,$b)=split(/</,$str); $b =~ s/>//g; こんな力技のようなものしか思い浮かばなくて 質問させていただきました。 $1というものを知りませんでした。勉強になりました。 ありがとうございました。