如何提取URL的特定部分并用不同的数据替换 [英] How to extract specific parts of a URL and replace with different data

查看:161
本文介绍了如何提取URL的特定部分并用不同的数据替换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个特定类型的网址,我需要确定它的一些部分,并用一些数据替换,url将是 www.something.com@param1 = {{^用户名^}}, param2 = {{^ user id ^}} ,....



我需要做的是识别 {{^ User Name ^}} {{^ user id ^}} 并替换为我的值,



任何人有一个想法做这与flex?



我的一个朋友告诉我使用RegExp这个,但我

解决方案

像这样的东西可能会工作,没有RegExp专家。
$ b

  var s:String =www.something.com@param1={{ ^用户名称^}},param2 = {{^ user id ^} }; 
var userPattern:RegExp = /(?< = param1 =)({{\ ^)([A-Za-z0-9])*(\ ^}})/;
var userIdPattern:RegExp = /(?< = param2 =)({{\ ^)([A-Za-z0-9])*(\ ^}})/;
s = s.replace(userPattern,'username');
s = s.replace(userIdPattern,'user_id');

如果您只想替换{{}} maby中的字符串,则会生效:

  var s:String =www.something.com@param1={{ ^用户名^}},param2 = {{^ user ID ^}}; 
var userPattern:RegExp = /(?< = param1 = {{)\ ^([A-Za-z0-9])* \ ^(?=}})/;
var userIdPattern:RegExp = /(?< = param2 = {{)\ ^([A-Za-z0-9])* \ ^(?=}})/;
s = s.replace(userPattern,'username');
s = s.replace(userIdPattern,'user_id');

要移除多个{{}},请执行以下操作www.something.com@param1={{用户名称^}},{{^,e,^}},paramX = {{^ user id ^}}在paramX之间试试这个:

  var s:String =www.something.com@param1={{ ^ User name ^}},{{^,e,^}},param2 = {{^ user id ^}}; 
var userPattern:RegExp = /(?<= param1 = {{)\ ^([A-Za-z0-9\ ^}} {{,])*(?=}})/ ;
var userIdPattern:RegExp = /(?<= param2 = {{)\ ^([A-Za-z0-9\ ^}} {{,])*(?=}})/ ;
s = s.replace(userPattern,'username');
s = s.replace(userIdPattern,'user_id');

输出应该是www.something.com@param1 = {{username}},param2 = {{
$ b




$ b $ var s:String =www.something.com@param1={{ ^用户名^}},{{^,e,^}},param2 = {{^ user id ^}};
var userPattern:RegExp = /(?< = param1 =)({{\ ^)([A-Za-z0-9\ ^}} {{,])*(})/;
var userIdPattern:RegExp = /(?< = param2 =)({{\ ^)([A-Za-z0-9\ ^}} {{,])*(})/;
s = s.replace(userPattern,'username');
s = s.replace(userIdPattern,'user_id');

输出应该是www.something.com @ param1 = username,param2 = user_id。


I have a specific type url and i need to identify some parts of it and replace with some data, url would be www.something.com@param1={{^User Name^}},param2={{^user id^}},....

What i need to do is, identify {{^User Name^}} and {{^user id^}} and replace with my values,

Anybody have an idea to do this with flex?

A friend of mine told me to use RegExp for this, but I'm clueless about how to use it.

解决方案

Something like this might work, no expert on RegExp tho.

var s:String = "www.something.com@param1={{^User Name^}},param2={{^user id^}}";
var userPattern:RegExp = /(?<=param1=)({{\^)([A-Za-z0-9 ])*(\^}})/;
var userIdPattern:RegExp = /(?<=param2=)({{\^)([A-Za-z0-9 ])*(\^}})/;
s = s.replace(userPattern,'username');
s = s.replace(userIdPattern,'user_id');

If you want to replace only the string inside {{}} maby this would work:

var s:String = "www.something.com@param1={{^User Name^}},param2={{^user id^}}";
var userPattern:RegExp = /(?<=param1={{)\^([A-Za-z0-9 ])*\^(?=}})/;
var userIdPattern:RegExp = /(?<=param2={{)\^([A-Za-z0-9 ])*\^(?=}})/;
s = s.replace(userPattern,'username');
s = s.replace(userIdPattern,'user_id');

To remove multiple {{}} for exampe www.something.com@param1={{^User Name^}},{{^,e,^}},param2={{^user id^}} between paramX try this:

var s:String = "www.something.com@param1={{^User Name^}},{{^,e,^}},param2={{^user id^}}";
var userPattern:RegExp = /(?<=param1={{)\^([A-Za-z0-9\^}}{{, ])*(?=}})/;
var userIdPattern:RegExp = /(?<=param2={{)\^([A-Za-z0-9\^}}{{, ])*(?=}})/;
s = s.replace(userPattern,'username');
s = s.replace(userIdPattern,'user_id');

Output should be www.something.com@param1={{username}},param2={{user_id}}.

Another example:

var s:String = "www.something.com@param1={{^User Name^}},{{^,e,^}},param2={{^user id^}}";
var userPattern:RegExp = /(?<=param1=)({{\^)([A-Za-z0-9\^}}{{, ])*(})/;
var userIdPattern:RegExp = /(?<=param2=)({{\^)([A-Za-z0-9\^}}{{, ])*(})/;
s = s.replace(userPattern,'username');
s = s.replace(userIdPattern,'user_id');

Output should be www.something.com@param1=username,param2=user_id.

这篇关于如何提取URL的特定部分并用不同的数据替换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆