如何在VB.NET中移除字符串中的数字,仅保留纯文本?
VB.NET 去除字符串中的数字并提取纯文本内容
这里提供几种实用的实现方式,针对你的需求(比如把"0196 CARPORT"转为"CARPORT"):
方法1:正则表达式(最简洁)
利用正则替换所有数字字符,再清理前后空格:
Imports System.Text.RegularExpressions Dim input As String = "0196 CARPORT" Dim output As String = Regex.Replace(input, "\d", "").Trim() ' 输出结果为 "CARPORT"
\d 匹配任意0-9的数字,Replace 将所有数字替换为空字符串,Trim() 移除替换后可能残留的前后空格。
方法2:遍历字符筛选(无需依赖正则)
逐个检查字符串中的字符,只保留非数字的部分:
Imports System.Text Dim input As String = "0196 CARPORT" Dim sb As New StringBuilder() For Each c As Char In input If Not Char.IsDigit(c) Then sb.Append(c) End If Next Dim output As String = sb.ToString().Trim()
用StringBuilder拼接字符比直接字符串拼接效率更高,适合处理较长的字符串。
方法3:LINQ 一行式写法
借助LINQ的筛选能力快速实现:
Imports System.Linq Dim input As String = "0196 CARPORT" Dim output As String = New String(input.Where(Function(c) Not Char.IsDigit(c)).ToArray()).Trim()
通过Where筛选出所有非数字字符,转成字符数组后生成新字符串,最后清理空格。
内容的提问来源于stack exchange,提问作者cherry
相关产品推荐
相关产品推荐

