2016-06-14 7 views
1

タイプfunction funcname() {の関数宣言に一致する次の正規表現パターンがあります。 Javascriptを/ jQueryの機能で任意のJavascript/jQuery関数宣言行に一致する正規表現

function\s+(.*?)\)\s*{ 

しかし、時には、あまりにも下記の方法で宣言されています:

funcName = function() {

それとも

jQuery.fn.funcName = function() {

私はに正規表現をORifyする方法がわかりませんすべての上記の構文を一致させることができます。多分、次のコードでは、コード形式規則に従ってください。このような

+0

使用[ ' (?:(\:\?)\)\ s * = \ s *)?function \ s *(。*?)\( '(https://regex101.com/r/lO0cB9)/1)をチェックし、グループ2が一致するかどうかを確認します。一致していない場合はグループ1の値を使用してください。 –

+0

ありがとうございます。 nt。 –

答えて

0

何か作業をする必要があります:

function.*{|\w* \= function.*{|jquery.*{ 

垂直バーの文字を使用すると、正規表現で「orify」方法です。たとえば、\ nは

、マッチする:

そして、あなたは改行セレクタを使用する必要が複数行に対処するための

あなたが使用する可能性があります
function funcname() { 

} 

を:

function.*\{\n*} 
+0

これは、JavascriptとjQueryのすべての関数構文に一致する最も短い正規表現です。どうもありがとう。 –

+0

もう一つ、あなたの正規表現を分割して括弧で囲んで、改行文字を含むこの宣言行の直後に何かを追加したいというグループを作ることができますか? –

+0

@VickyDev –

関連する問題