正则替换的问题,顺便放分

lovingkiss 2009-02-12 03:44:49
http://www.myurl.com/abcd.html
或者
www.myurl.com/abcd.html

替换为
http://www.myurl.com/SSS.aspx?id=abcd

使用正则替换;
...全文
141 31 打赏 收藏 转发到动态 举报
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanlongwuhui 2009-02-16
  • 打赏
  • 举报
回复
mark
haifeng39 2009-02-14
  • 打赏
  • 举报
回复
jf
HimeTale 2009-02-14
  • 打赏
  • 举报
回复
估计是url重写
lovingkiss 2009-02-13
  • 打赏
  • 举报
回复
答案:

[Quote=引用 12 楼 Fibona 的回复:]
Regex.Replace(input, "(.+)/([^.]+)\.(html)", "$1/" & "SSS" & ".aspx?id=" & "$2")
[/Quote]

已经解决,谢谢
HDNGO 2009-02-13
  • 打赏
  • 举报
回复
<SCRIPT LANGUAGE="JavaScript">
var re = /(http:\/\/)?(www.myurl.com\/)(abcd).html/;
var oldtext = "www.myurl.com/abcd.html";
if(re.exec(oldtext))
{
var g1 = RegExp.$1;
var g2 = RegExp.$2;
var g3 = RegExp.$3;
if(g1=="")
{
g1 = "http://";
}
var newtext = g1+g2+"SSS.aspx?id="+g3;
alert(newtext);
}
else
{
alert("error");
}
</SCRIPT>
lovingkiss 2009-02-13
  • 打赏
  • 举报
回复
1、正则我不是很会
2、问题问得不是很明确了。。。

前面的域名可能是动态的
http://www.abcde/abc/myurl.html
我是想获得
http://www.abcde/abc/abcd.aspx?id=myurl

过程中不要管前面是什么,只要最有的一步替换,前面的不管是什么都不动的;
taotie1225 2009-02-13
  • 打赏
  • 举报
回复
ding l
eastkiki 2009-02-13
  • 打赏
  • 举报
回复
友情UP
eastkiki 2009-02-13
  • 打赏
  • 举报
回复
UP
HDNGO 2009-02-13
  • 打赏
  • 举报
回复
<SCRIPT LANGUAGE="JavaScript">
var re = /(?:http:\/\/)?www.myurl.com\/((abcd).html)/;
var oldtext = "http://www.myurl.com/abcd.html";
if(re.exec(oldtext))
{
var g1 = RegExp.$1;
var g2 = RegExp.$2;
var newtext = oldtext.replace(g1,"SSS.aspx?id="+g2);
alert(newtext);
}
else
{
alert("error");
}
</SCRIPT>
gbjgg 2009-02-13
  • 打赏
  • 举报
回复
up
josephSC 2009-02-13
  • 打赏
  • 举报
回复
jf~
Jessie_Zhang 2009-02-13
  • 打赏
  • 举报
回复
UP~
lovingkiss 2009-02-13
  • 打赏
  • 举报
回复
[Quote=引用 25 楼 ojlovecd 的回复:]
引用 24 楼 lovingkiss 的回复:
答案:

引用 12 楼 Fibona 的回复:
Regex.Replace(input, "(.+)/([^.]+)\.(html)", "$1/" & "SSS" & ".aspx?id=" & "$2")


已经解决,谢谢

汗,lovingkiss居然无视我的回复
[/Quote]

没,顺手找了一个,验证通过了就好了——回头给分,不会忘记你的
fanjingyxl 2009-02-13
  • 打赏
  • 举报
回复
帮顶
我姓区不姓区 2009-02-13
  • 打赏
  • 举报
回复
[Quote=引用 24 楼 lovingkiss 的回复:]
答案:

引用 12 楼 Fibona 的回复:
Regex.Replace(input, "(.+)/([^.]+)\.(html)", "$1/" & "SSS" & ".aspx?id=" & "$2")


已经解决,谢谢
[/Quote]
汗,lovingkiss居然无视我的回复
Fibona 2009-02-12
  • 打赏
  • 举报
回复
Regex.Replace(input, "(.+)/([^.]+)\.(html)", "$1/" & "SSS" & ".aspx?id=" & "$2")

路人乙e 2009-02-12
  • 打赏
  • 举报
回复

string s = "www.myurl.com/abcd.html";
s = Regex.Replace(s, @"(http://)?www.myurl.com/([\w]*)\.html", "http://www.myurl.com/sss.aspx?id=$2");
我姓区不姓区 2009-02-12
  • 打赏
  • 举报
回复

Imports System.Text.RegularExpressions

Module Module1

Sub Main()
Dim str = "www.myurl.com/abcd.html"
Console.WriteLine(GetHtml(str))
End Sub

Function GetHtml(ByVal input As String) As String
Return Regex.Replace(input, "(.+)/([^.]+)\.(html)", "$1/" & "SSS" & ".aspx?id=" & "$2")
End Function
End Module

DalyQiao 2009-02-12
  • 打赏
  • 举报
回复
不明白,这么简单,有什么好问的
加载更多回复(8)

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧