我有这个字符串
“1.3.1。\ t生产和销售分析:”
我想从字符串的开头和结尾修剪数字和转义序列。
输出应为:
“生产和销售分析:”
我的代码:
Char[] trimArray = new Char[] {'0','1','2','3','4','5','6','7','8','9','.',',',':','\\','/'};
String test = "1.3.1.\tProduction and Sales Analysis:";
test = test.TrimEnd(trimArray);
但问题是当 23232-232123-asd-323 这样的字符串出现时它也删除了数字
我想从字符串的开头和结尾删除不需要的字符但想保留字符串 23232-232123-asd-323或手机号码
感谢。
答案 0 :(得分:0)
中间总是'\ t'吗? 您可以尝试按'\ t'分割并修剪结束。
sudo apt-get install php5-gd
如果冒号总是在你想要的结尾,你可以再次拆分;)
答案 1 :(得分:0)
如果有一些共同点将坏数字和好的数字分开,比如说“t”,那么如何找到公共字母/符号的索引然后创建后面的所有内容的子字符串。例如:
String test = "1.3.1.\tProduction and Sales Analysis:";
index = test.LastIndexOfAny(new char[] { 't' });
test = test.Substring(index +1);
这应该给你“生产和销售分析:”。你可以对“:”做同样的事情,除非你想要它之前的所有内容
int index = test.LastIndexOfAny(new char[] { ':' });
test = test.Substring(0, index);
答案 2 :(得分:0)
使用正则表达式:
using System.Text.RegularExpressions;
string input = "1.3.1.\tProduction and Sales Analysis:";
string rgx = @"(?:[0-9.]+)*(?:\\[a-zA-Z])*([\w\s\.\:-_]+)(?:\\[a-zA-Z])*";
string result = Regex.Match(input, rgx).Groups[1].Value.TrimStart();