正規表現 試し中です。
正規表現・・ まだまだですが,かけらほどはわかるようになってきました。
これは確かにすごい。
徐々に学んでいますが,これが使いこなせたらほんと,文字列扱うの楽にコンパクトになるだろうなぁ。
WordでもExcelでもPowerpointでも試せます。VBScriptでももちろんいいのではないでしょうか。そのへん無知です。ただ参照設定でインテリセンス使えるOfficeアプリのほうがいいと思われます。
参照設定は Microsoft VBScript Regular Expressions 5.5 にしましょう。
最初はさっぱりわかりませんので,参照設定は大きな味方。
Sub test2() Dim Regex As VBScript_RegExp_55.RegExp Set Regex = New VBScript_RegExp_55.RegExp Dim ret As VBScript_RegExp_55.MatchCollection Dim strPattern As String Dim RegMatches As Variant Dim strChem As String strChem = "NaOH + HCl → NaCl + H2O" strPattern = "(.*)→(.*)" With Regex .Pattern = strPattern .IgnoreCase = False .Global = True Set RegMatches = .Execute(strChem) Stop End With End Sub
これを実行してローカルウィンドウを見ると,
SubMatchesの中に矢印の両側が取れています。
正規表現は
strPattern = "(.*)→(.*)"
ここだけです。すごいですよね。
strPattern = "([a-zA-Z0-9]+)"
これだと
それぞれの化学式を捕捉しています。
これ正規表現以外で書くと大変ですよね・・
でも,まだまだ知識になってないので,じゃあ矢印の左右をそれぞれ別にしたいとなると,
しばーらく悪戦苦闘しているんですが,さっぱりです(;´▽`A``
敵は強い。でも,仲間にしたら強い味方のようですね(;´▽`A``
ムズカシイナァ