2

regexkitliteXcodeでiPhoneアプリのデータを検証するために使用しています。

次のjson結果を送信するAPI呼び出しを行っています。

"taskDate": newDate("September 23, 2011 00:00:00")

正規表現を使用して次のように変換するにはどうすればよいですか:

"taskDate": "newDate("September 23, 2011 00:00:00")"

すべての「taskdate」キーの値を引用符で囲みたいと思います。

編集:OPのコメントを追加する

これが私が使用しているものです:

[resultString replaceOccurrencesOfRegex:@"new Date((.*?)\")," withString:@"\"\"," range:NSMakeRange(0, [resultString length])];

ここで、resultString は「new Date(....」を含む文字列です。

4

1 に答える 1

1

正規表現を使用して、テキストのどこに "taskDate": "newDate("September 23, 2011 00:00:00")" の形式のテキストがあるかを特定できますが、実際の置換は自分で作成する必要があります。正規表現は文字列を置き換えるのではなく、文字列内のパターンを見つけます。今、"taskDate": newDate("<anything can go here>")あなたが使用できるパターンを見つけるために

"taskDate"\: newDate\(".*?"\)

括弧内に何か他のものを含めることができる場合は、より具体的にして、日付のみを指定する必要があります。

"taskDate"\: newDate\("[a-zA-z]* \d{2}, \d{4} \d{2}\:\d{2}\:\d{2}"\)

これは、"taskDate"\: newDate\("Letters 00, 00:00:00"\). ここから、月を具体的にして、すべての引用の間に空白を入れることができます. これらすべての変更により、正規表現がより複雑になるため、不要なものとの一致を避けるために、より厳密にするだけです。括弧内に何か他のものを入れることができるというシナリオが存在しない場合は、最初の正規表現を使用します。

つまり、コンテンツ内の文字列を一致させた後、コードを記述して引用符で囲む必要があります。

于 2012-01-19T05:35:53.133 に答える