概要
Regexという正規表現では、WalkMeコンテンツに表示されるか、自動プロセスの一部であるダイナミックテキストを操作できます。 使用 Regex構文の使用は使用しているダイナミックテキストの値に、必要な値と関連のない他の文字の両方が含まれている場合に最適です。
regexの詳細についてはこちらをご覧ください。
ユースケース
Regexのユースケースには以下のようなものがあります。
- ダイナミックテキストにユーザーの姓名が含まれている場合、Regexを使ってファーストネーム(名)のみを選択してShoutOutやバルーンに表示することで、よりパーソナルな表示が可能になります(視覚的な表示)
- ユーザーのメールアドレス(追加データを含む大きなオブジェクトの一部である場合)を、ページ読み込み時にテキストフィールドに自動入力(自動化)します
- ダイナミックテキストを使用してユーザーを別のページに自動的に移動させる場合、URLの一部のみを選択します
ユースケース例
顧客は、日付を示す画面上のエレメントが2019年1月31日以前または同等の場合にスマートチップ表示をしたいと考えています。
問題に対処する方法:
- 一致する可能性のある値と、一致したくない値をアウトラインします
- 問題を複数のルールグループに分解し、組み合わせると、一致するすべての値を囲みます
- この例では、一致する4つの異なるパターンがあります:
- 2019年1月中の日付
- 2010年1月1日から2018年12月31日までの日付
- 2000年1月1日から2009年12月31日までの日付
- 00年1月1日から1999年12月31日までの日付
- 上記の各ケースを処理し、テストするためのルールを形成します:
- ^Jan[\s]+[0123]?[\d]+,[\s]+2019$
- ^[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]$
- ^[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]$
- ^[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
- 各グループをテストした後、パイプを使用して1つの文字列に結合します(余分な^と$sを削除します)
- ^Jan[\s]+[0123]?[\d]+,[\s]+2019|[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]|[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]|[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
- スマートチップの表示セグメントルールで上記のRegExを実装します:
- OSE/jQuery > テキストは、正規表現> ^Jan[\s]+[0123]?[\d]+,[\s]+2019|[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]|[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]|[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
- 結果:スマートチップは、エレメントのテキスト値が000年1月1日~2019年1月31日までの間に表示されます
使用方法
正規表現自体を含む開始のregexタグで始まり、次に正規表現を適用したい文が続き、終了のregexタグで終わります。
[regex=" {regexそのもの} "] {regexを実行するテキスト}[/regex]
Note
- {regex on}は、変数、Cookie、WalkMeデータ、jQueryなどの複数のダイナミックテキスト値、および静的値を組み合わせて使用できます
- Regexにおけるテキストの使用は、すべてではないにしてもほとんどが動的なもので、静的なテキスト値の使用は最小限です
WalkMeでのregexの使用をサポートしました
ルールエンジンルールタイプ:
- 選択された要素
- URL
- ユーザー属性
- jQuery
- 画面上エレメント
- 変数(ユーザーデータ)
WalkMeコンテンツのBBCode:
- ビジュアル表示
- スマートウォークスルーステップ
- シャウトアウト
- ガイダンススマートチップ
- アンケート
- 自動化
- スマートウォークスルー自動ステップ(テキストを入力し、リスト値を選択します)
- スマートウォークスルーリダイレクトステップ
Regex構造
開始と終了の区分
ブラケットの外側では、^はregexの開始を示し、$はregexの終わりを示すために使用されます。
例
- 拡張パッケージのRegex:^https:\/\/ecolab\.my\.salesforce\.com.*|^https:\/\/ecolab.*na.*\.visual\.force\.com.*
- ルールエンジンのRegex:ユーザーデータ → 変数 → 部門 → Is Per Regular Expression(正規表現) → ^sales$
シングル文字マッチ
regexの最も基本的な形式は、直接文字マッチを行います。
リストと範囲
[]を使用して、値のリストを指定し、-と組み合わせると、ターゲット文字列で対応する文字が取ることができる値の範囲を指示できます。
例
- ^[dcr][ao][gt]$
- 「dog」「cat」「rat」「rag」にマッチします
- 最初の文字はd、c、またはrでなければなりません。2番目の文字はaまたはoでなければならず、3番目の文字はgまたはtでなければなりません
- ^[a-z][0-9]$
- 最初の文字は、〜z(小文字)でなければならず、2番目の文字は0〜9でなければなりません
繰り返し
{3} {#,#}は、regex内で同じパターンを連続して入力することを避けるために使用できます。
例
- ^[a-z]{3}$
- 「adf」や「kzd」などの順に3つの小文字にマッチします
- ^[a-z]{1,3}$
- 「a」「am」「abc」などの先行する文字のうち1つ以上、3つ以上にマッチしますが、「duct」はマッチしません
ワイルドカード
これらは、ターゲット文字列のテキストが動的であるか、コンテンツが重要ではない場合に便利です。 は単一の文字にマッチし、*は前のパターンの0以上と一致し、+は前のパターンの1つ以上と一致します。
例
- ^.*$
- 任意の文字の0以上と一致し、一致するサブドメインにのみ興味があるため、regexの先頭と末尾(特に拡張機能内)に追加するのに便利です
- ^a+b*c+$
- +は、前の文字の少なくとも1つが存在しなければならないことを指定するため、マッチします
エスケープ文字
バックスラッシュ\は、それに続く文字が特別な意味を持つことを示します。
例
- \.
- \/, \$
- \dと\D
- \sと\S
- \wと\W
除外文字
[] ^内に含まれる場合、文字はターゲット文字列に存在すべきではないことを示します。
例
- ^[^abc]$
- a、b、またはcではないシングル文字にマッチします
- ^[^n-p]$
- n、o、またはpではないシングル文字にマッチします
- ^\w[^og]{2}$
- beeとseaはマッチしますが、log、bog、fogなどはマッチしません
ネガティブな先読み
(?!)は、以下の文字列がマッチに存在すべきではないことを指定し、例えば、WalkMe拡張が間違ったiFrameに注入されないようにするのに便利です。
例
- ^.*eu1\.visual\.force\.com\/(?!Console).*$
パイプライン
|は、regexの論理「OR」演算子であり、複数のパターンにマッチするターゲット文字列を指定します。
例
- ^.*ctmstech\.roche\.com/eclinical.*|.*ctms-performance\.roche\.com.*|.*siebelctmsqa\.kau\.roche\.com.*$
WalkMeでRegexのChatGPTの使用