溺れる者はUWSCを掴め!
UWSCで正規表現を使う
- 2011-12-31 (Sat)
- 実用スクリプト
UWSCで正規表現を使う場合にはVBScript又はJScriptを使うことにになるのですが、UWSCから使うならVBScriptの方が扱い安いですかね。
という事で今回はVBScriptのRegExpを使ったサンプル
正規表現のパターンの書方に関しては詳しく説明しないので各自ご確認を
- RegExpのプロパティには以下のプロパティがあります。
-
Patternプロパティ 正規表現で使用するパターン IgnoreCaseプロパティ 大文字と小文字を区別する(デフォルト:False) Globalプロパティ 文字列全体を検索する(デフォルト:False) - RegExpのメソッドには以下のメソッドがあります。
-
Executeメソッド Patternとマッチした結果をMatchesコレクションで返します。 Replaceメソッド Patternとマッチした結果をを置換文字列と置き換えます。 Testメソッド Patternとマッチした場合はTrueを返します。
Executeメソッドのサンプル
PUBLIC regvb = CreateOLEObj("VBScript.RegExp") //--sample //str="2012年1月1日~2012年1月30日" //Pattern="\d+年(\d+月\d+日)" // //Matches=regvb_Execute(str,Pattern) //for i=0 to Matches.Count-1 // Print Matches.item(i).Value // Print Matches.item(i).SubMatches(0) // Print Matches.item(i).FirstIndex // Print Matches.item(i).Length //next //-- Function regvb_Execute(str,Pattern,IgnoreCase=true,Global=true) regvb.IgnoreCase = IgnoreCase regvb.Global = Global regvb.Pattern=Pattern Matches = regvb.Execute(str) Result=Matches Fend
- Executeメソッドを実行して帰ってくる戻値Matchesコレクションは以下のプロパティがあります。
-
Countプロパティ Matchオブジェクトの個数 Itemプロパティ MatchオブジェクトをMatches.Item(数字)で返す - Matchオブジェクト(=Matches.Item(数字))には以下のプロパティとコレクションがあります。
-
Valueプロパティ マッチした文字列を返す。 Lengthプロパティ マッチした文字列の長さを返す。 FirstIndexプロパティ 最初にマッチに成功した位置を返す。先頭は0から。 SubMatchesコレクション 「()で括られた」パターングループにマッチしたコレクションを返す。
sampleを実行すると以下の結果になる
---------結果-------
2012年1月1日
1月1日
0
9
2012年1月30日
1月30日
10
10
------------------------
最初にマッチしたのは「2012年1月1日」でSubMatches(0)は「1月1日」文字位置は「0」で文字列の長さは9文字
Replaceメソッドのサンプル
PUBLIC regvb = CreateOLEObj("VBScript.RegExp") //--sample //str="2012年1月1日~2012年1月30日" //Pattern="\d+年" //Print regvb_Replace(str,Pattern,"2013年") //-- Function regvb_Replace(str,Pattern,replStr,IgnoreCase=true,Global=true) regvb.IgnoreCase = IgnoreCase regvb.Global = Global regvb.Pattern=Pattern str = regvb.Replace(str,replStr) Result=str Fend
sampleを実行すると以下の結果になる
---------結果-------
2013年1月1日~2013年1月30日
------------------------
TestメソッドはMatches.countが0だと失敗、0以上だと成功という風にExecuteで代用できるので省略します。
- Comments: 0
UWSCでsleipnirを使う上での基本とコツ
- 2011-12-20 (Tue)
- 覚えとくと役立つ知識
※記事内容はsleipnir2についての記事です
環境設定
ツール→sleipnirオプション→全般→「スクリプトによるクライアントの操作を許可する」にチェック
OLEオブジェクト作成とアクティブなタブの取得
短縮すると・・
この戻り値tab_objは
で作成される戻り値IEとほぼ同等
なので
として戻り値をIEとしてしまった方がIE用に作ったFunction等が流用できるので便利
例えば・・
こんな風に使える
できないのはIE.Navigate2で新規タブを開く操作 IE.quitで閉じる操作ぐらいでほぼIEと同等の操作ができる。
Sleipnir特有の操作
詳しくは公式リファレンス見て欲しいんですが主な操作をいくつか
タブブラウザ Sleipnir オンラインデータベース(Sleipnir.API リファレンス)新規タブを開く
trueで新規タブをアクティブにする
開いてるタブの数
タブを閉じる
- Comments: 0
IE・sleipnir・Firefox・chrome・Excel 2010のショートカット一覧ページのまとめ
- 2011-12-10 (Sat)
- 覚えとくと役立つ知識
IE・sleipnir・Firefox・chrome・Excel 2010のショートカット一覧ページのまとめです。Sckeyなどで操作する場合に覚えておくといいですね。
- Comments: 0
- Search
- Meta
- Links
- Feeds
- PR
- PR