文字列の特定の部分を JavaScript の正規表現に置き換えようとしていますが、それらが and でラップされていない場合に限り{{{
ます}}}
。
私が現在使用しているシステムは、複数の文字列の置換を行い、置換をこれらの括弧で囲みます。したがって、「h」を曜日 (たとえば木曜日) に置き換えると、置換は を出力します"{{{Thursday}}}"
。置換が再び発生した場合、文字列は最終的"{{{T{{{Thursday}}}ursday}}}"
に木曜日の「h」が置換されたものになります。
私が探しているのは、「h」を置き換える正規表現パターンですが{{{
、}}}
ラッパー内に含まれていない場合のみです。
前もって感謝します :)
編集:
ここにいくつかのコード例があります。各置換は括弧で囲まれ、正規表現パターンは過去の置換を回避するために (?!{{{) および (?!}}}) を使用します。
var string = 'n d m y',
dayTextRegex = /(?!{{{)n(?!}}})/g,
dayRegex = /(?!{{{)d(?!}}})/g,
monthRegex = /(?!{{{)m(?!}}})/g,
yearRegex = /(?!{{{)y(?!}}})/g;
string = string.replace(dayTextRegex, '{{{Monday}}}');
string = string.replace(dayRegex, '{{{04}}}');
string = string.replace(monthRegex, '{{{June}}}');
string = string.replace(yearRegex, '{{{2012}}}');
//string is now equal to "{{{Mon{{{04}}}ay}}} {{{04}}} {{{June}}} {{{2012}}}"