質問編集履歴

2 誤字修正

clubman

clubman score 46

2017/02/19 14:41  投稿

C#の正規表現をJavaScriptで記述する方法
C#のコードをJavaScriptに移植しています。
以下のコードをJavaScriptにしたいのですが2つ問題があり上手くいきません。
お知恵を拝借いただければ幸いです。
```C#
MatchCollection res = Regex.Matches(e.Name, @"(?<prefix>\$\[)(?<infix>[^]]+)(?<postfix>])");
foreach (Match m in res)
{
 string compName = m.Groups["infix"].Value;
}
```
```JavaScript
var regExp = new RegExp("(?<prefix>\\$\\[)(?<infix>[^]]+)(?<postfix>])");
res res = regExp.exec(e.Name);
var res = regExp.exec(e.Name);
```
問題1.JavaScriptのnew RegExp・・を実行すると「文字の繰り返しを表す正規表現演算子が不正です」とエラーになってしまいます。
「?<xxx>」を削除するとエラーにならないのでこの構文がJavaScriptではサポートされていないようです。
JavaScriptではどのように記述したら良いでしょうか?
問題2.
問題1が解決した場合、C#の「m.Groups["infix"]」に対応するコードはどのように記述したら良いでしょうか?
よろしくお願いいたします。
  • C#

    9018 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • JavaScript

    20334 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • 正規表現

    923 questions

    正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

1 タグを追加

clubman

clubman score 46

2017/02/17 19:44  投稿

C#の正規表現をJavaScriptで記述する方法
C#のコードをJavaScriptに移植しています。
以下のコードをJavaScriptにしたいのですが2つ問題があり上手くいきません。
お知恵を拝借いただければ幸いです。
```C#
MatchCollection res = Regex.Matches(e.Name, @"(?<prefix>\$\[)(?<infix>[^]]+)(?<postfix>])");
foreach (Match m in res)
{
string compName = m.Groups["infix"].Value;
}
```
```JavaScript
var regExp = new RegExp("(?<prefix>\\$\\[)(?<infix>[^]]+)(?<postfix>])");
res res = regExp.exec(e.Name);
```
問題1.JavaScriptのnew RegExp・・を実行すると「文字の繰り返しを表す正規表現演算子が不正です」とエラーになってしまいます。
「?<xxx>」を削除するとエラーにならないのでこの構文がJavaScriptではサポートされていないようです。
JavaScriptではどのように記述したら良いでしょうか?
問題2.
問題1が解決した場合、C#の「m.Groups["infix"]」に対応するコードはどのように記述したら良いでしょうか?
よろしくお願いいたします。
  • C#

    9018 questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • JavaScript

    20334 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • 正規表現

    923 questions

    正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る