用asp.neg
有一个字符串 b="fdfd555rer33rereriyhyhy55652556gfgfgf"(字符串中的数字长度不固定,数字也不固定)
让这个字符串变成 fdfd555/rer33/rereriyhyhy55652556/gfgfgf
请高手出马谢谢!
有一个字符串 b="fdfd555rer33rereriyhyhy55652556gfgfgf"(字符串中的数字长度不固定,数字也不固定)
让这个字符串变成 fdfd555/rer33/rereriyhyhy55652556/gfgfgf
请高手出马谢谢!
解决方案 »
- 为什么n传不出去?
- 关于在.net网页里面挂漂浮广告的问题!
- 高手请进,用gridview绑定多选框,怎么获取是否选中,获取选中的那个?
- 【ajax,ASP.net】带有超级链接的图片幻灯(图片轮替)
- 咨询:大家好,有用过aspxgrid控件的吗,都说它太占内存了是吗?用过进来的给点建议谢谢!
- 关于access库下使用update更新记录的问题?
- DataGrid中模板列的问题
- 大家进来讨论一个问题.没办法,我没分了.不能送分给大家
- 我用过一些代码自动生成工具,大家觉得那个好呢,或有什么推荐的及对代码自动生成模板定义的技术实现等,谢谢
- 利用agsxmpp与IOS端进行即时通讯
- 用户自定义控件类似DropDownList添加SelectedIndexChanged事件
- C# 字符串中的数字后面加/
Response.Write(Regex.Replace(s, @"(?<=\d+)(?=\D)", "/"));
void Main()
{
string b="fdfd555rer33rereriyhyhy55652556gfgfgf";
b=Regex.Replace(b,"(\\d+)","$1/");
Console.WriteLine(b);
//fdfd555/rer33/rereriyhyhy55652556/gfgfgf
}
fdfd555rer33......
匹配到
fdfd555|rer33.....
|表示匹配的位置,把这个长度为0的字符替换成/
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.IO;
namespace sxLdfang
{
class Program
{
static void Main(string[] args)
{
string html = @"fdfd555rer33rereriyhyhy55652556gfgfgf55";
string pattern = @"\d+";
string result = Regex.Replace(html, pattern, @"$0/");
Console.WriteLine(result);
Console.ReadKey();
}
}
}
运行结果:
fdfd555/rer33/rereriyhyhy55652556/gfgfgf55/
思路就是,
0、设定一个标记位,比如:bool IsNumber = false;
1、逐个检查字符串中的每一个字符,遇到数字就将标记位改变,否则就将其还原;
比如:if(char <=='9' && char >= '0') IsNumber = true; else IsNumber = false;
2、如果标记为指示前面的字符为数字,而当前字符不是数字,则插入一个“/”;
3、直到检查完整个字符串。
其中一种伪代码大概如下:
string CHECK(string s)
{
string r;
char tmp;
bool IsNumber = false;
for(int i=0;i<s.length;i++)
{
t = s[i];
if(t <='9' && t >= '0' >)
{
r += t;
IsNumber = true;
}
else
{
if(IsNumber)
{
r += "/"+t;
IsNumber = false;
}
else
{
r+= t;
IsNumber = false;
}
}
}
if(IsNumber) r+="/";