私のWebページでC++コードを強調するjQueryプラグインを作成しています。私はRegExであまりにもいいとは言えないので、単語の一部を強調表示せずにキーワードを強調する方法(例えば、 'if'、 'case'、 'void'など)を理解することはできません'ペイント')。私は少し変更しましたが、まだ強調表示されていないものがあります。これは私の正規表現は次のようになります。JavaScript RegEx構文ハイライト
str = str.replace(new RegExp("([' ' || \t ||,|| \"\"])(" + ParserKeywordsArr[i] + ")", 'g'), "$1<span style='color:" + ParserColorsArr[i] + ";'>" + ParserKeywordsArr[i] + "</span>");
これは、配列に格納され、私が強調したいすべてのキーワード、を通過し、そして色(例ParserKeywordsArrと別の配列をtheresの[0]、ParserColorsArr無効です[。 0]は青ですので、青で強調表示されます)。しかし、私がこのようなものを置くとき:
void CCodeEditorCtrl::OnPaint(WPARAM wParam, LPARAM lParam)
{
return;
}
返されたが、強調表示されない。私はどのようにRegExに伝えるべきかわからない "その行の最初の単語がキーワードと一致するなら、それを強調表示する"
このプロジェクトのためにRegexでうまくいく必要があります... – Jivings