年越してからもう2ヶ月とちょっと経つんですね、、、、
あんまり言いたくはないですが時間がすぎるのが早いですねー
子供の頃に大人からこう言われるとそんなことはないだろうと思っていたものです。

現職場でもついにプログラムを見るお仕事が始まったのでポチポチ頑張ってます。
javastrutsを使ったお仕事なのですが、いままでCOBOLしか見てなかった僕からすると大変にさっぱりでずっと画面とにらめっこしてます。
今日はjavaでの正規表現で少し詰まったのでメモ。

www.sejuku.net

お仕事中にこのあたりを見ながらcontainsで出来るかなぁと思ってポチポチしてたのですが、何となくいまいち違うような気がしながらモヤモヤ。
試しにテストが気軽に流せないのでとりあえず処理を書いておいたのですが、、、、

実装したかったのが文字列内に半角英字とか半角数字とか持ってるの?って感じのもの。
文字列チェックみたいなものですかね。
お家に帰ってきてから別のサイトなどを見てるとむしろmatchesだなぁと思いpaiza.ioでちょいテスト〜。

www.sejuku.net
qiita.com

String.matches(".*[a-z].*")
String.matches(".*[0-9].*")

こんな感じに半角英数字はすぐに出来たのですが、記号周りでまたしてもちょいハマってしまいました、、、、
記号のエスケープ文字(\ * + . ? { } ( ) [ ] ^ $ - |)に\[とやっていたのですがどうにもエラーが止まらない!!!!!!

y-anz-m.blogspot.jp

よくよく調べると\\[と言った感じにバックスラッシュが2本必要だったんですね、、、
ついでにASCIIコード表を使えばa-zみたいに全部書かなくても出来るとのことだったのでこんな感じになりました。

String.matches(".*[!-/:-@\\[-`\\{-~].*")

正規表現やっぱり使いますよねー。