我如何使用正则expression式来引用一个语句
我正在使用regexkitlite
来validationxcode中的iPhone应用程序中的一些数据。
我正在做一个API调用,发送一个JSON结果:
"taskDate": newDate("September 23, 2011 00:00:00")
我如何使用正则expression式来将其转换为:
"taskDate": "newDate("September 23, 2011 00:00:00")"
我想用引号括住每个“taskdate”键的值。
编辑:添加OP的评论
这是我正在使用的是:
[resultString replaceOccurrencesOfRegex:@"new Date((.*?)\")," withString:@"\"\"," range:NSMakeRange(0, [resultString length])];
其中resultString是包含“新date(….”)的string。
您可以使用正则expression式来识别您的文本中的文本格式为“taskDate”:“newDate(”2011年9月23日00:00:00“)”,但实际的替代你将不得不自己写。 正则expression式不replacestring,它findstring中的模式。 现在,为了find"taskDate": newDate("<anything can go here>")
的模式"taskDate": newDate("<anything can go here>")
你可以使用
"taskDate"\: newDate\(".*?"\)
如果在括号内可以有其他的东西,你将不得不更加具体,只在里面指定一个date:
"taskDate"\: newDate\("[a-zA-z]* \d{2}, \d{4} \d{2}\:\d{2}\:\d{2}"\)
这将匹配"taskDate"\: newDate\("Letters 00, 00:00:00"\)
。 从这里你可以使具体的月份,并允许所有报价之间的空白。 所有这些变化使得正则expression式更加复杂,所以只有更严格的避免匹配你不想要的东西。 如果没有其他的东西可以放在括号里,我会select第一个正则expression式。
也就是说,在匹配内容中的string之后,您需要编写代码以将其与引号括起来。