我想通过整个Xcode项目运行正则表达式。目前,我有大约80个包含硬编码域的NSString实例。
我想更改此设置,以便我可以轻松地将主机网站更改为我的测试服务器。我在下面列举了一个例子:
以下是我的硬编码字符串示例:
NSString *strURL = [NSString stringWithFormat:@"http://www.website.com/assets/page.php?
user=%@&token=%@“, user, token];
我想这样做,以便我可以包含一个简单的变量,允许我更改我的主机,如下所示:
NSString *strURL = [NSString stringWithFormat:@"%@/assets/page.php?
user=%@&token=%@“, host_variable, user, token];
我无法进行简单的查找和替换,因为我经常将不同的变量传递给URL。我相信我需要一个正则表达式来正确地执行此操作。任何想法都会非常有用!
非常感谢!
答案 0 :(得分:1)
您可以替换
(strURL = \[[^\]]+)http://www\.website\.com([^\]"]+")
与
\1%@\2, host_variable
\[[^\]]+
是一个文字[
,后面只有一个结尾]
[^\]"]
是除]
或"
我们的想法是将strURL
的内容捕获到URL的开头,然后将字符串中的所有内容捕获到结束引号。
然后我们将其替换为我们在第一组中捕获的内容(即http...
之前的所有内容),然后是%@
,然后是website.com
之后引用内的所有内容(第二组) ),然后是host_variable
。
您可以使用here的想法。
这会解决您的问题吗?