空白字符怎么去掉!

qhlf78 2018-10-30 12:31:35



空白字符显示为问号,该如何去掉了?
原字符串【 3337875549486】

http://www.xmdlm.com/exeupdate/text.xlsx
...全文
1793 44 打赏 收藏 转发到动态 举报
写回复
用AI写文章
44 条回复
切换为时间正序
请发表友善的回复…
发表回复
qhlf78 2019-01-30
  • 打赏
  • 举报
回复
引用 43 楼 舉杯邀明月 的回复:
楼主早已失踪,又是一个“没有实质性的技术含量”的帖子…………

为何总是有人来挖坟 ???

qhlf78 2019-01-30
  • 打赏
  • 举报
回复
引用 7 楼 of123 的回复:
你的条形码字符串有效部分是固定的 13 个字符,且都在末尾。

Text1 = Right (Text1, 13)

具体问题,具体分析处理,不必提出宽泛的“去除非打印字符”。

条码不是固定位数
qhlf78 2019-01-30
  • 打赏
  • 举报
回复
感谢大家的回复
VB_MSSQL 2018-11-28
  • 打赏
  • 举报
回复
trim(string)
Never_Satisfied 2018-11-25
  • 打赏
  • 举报
回复
引用 37 楼 舉杯邀明月 的回复:
[quote=引用 36 楼 Never_Satisfied 的回复:]
楼主的问题让我想到另一个事,把汉字转成数字后,有没有区间?就像字符串0-9,在数字48-59这个区间。

“汉字”如何转成数字?


你是说的“字符编码”吧?
如果是“字符编码”,当然是有区间的,对于汉字的ANSI编码或“国标码”,
 你可以搜索一下“汉字区位码”。
对于汉字的Unicode编码,主要集中在 2F00 到 9FB0 之间;
  当然前面点2400到25F0之间还有一些特殊符号、数字序号之类的汉字编码。
[/quote]谢。 那我们直接判断是否在区间内,楼主的问题就完美解决了。
  • 打赏
  • 举报
回复
去除两段空字符串,你可以试试trim()
X-i-n 2018-11-20
  • 打赏
  • 举报
回复
1. 挖坟,翻来覆去挖;
2. 回帖前不看帖,有效的办法也好,无效的办法也好,可能的方法前面已经提了又提,还在这重复别人答案。
有这点功夫干点什么不好?
anonyomusx 2018-11-20
  • 打赏
  • 举报
回复
trim()啊
舉杯邀明月 2018-11-20
  • 打赏
  • 举报
回复
楼主早已失踪,又是一个“没有实质性的技术含量”的帖子…………

为何总是有人来挖坟 ???
吹风的兔子 2018-11-19
  • 打赏
  • 举报
回复
/// <summary> /// 格式化一段字符串, 将字符串中的 非预期的 幽灵字符 删除. /// <para>本函数将保留 空白符 \r 回车(CR) \n 换行(LF) \t 水平制表(HT) 这几个常用字符</para> /// <para>其他未知的 幽灵字符 将直接剔除. 极少使用的 幽灵字符 也会被剔除</para> /// </summary> public static string FormatString(string str) { return FormatString(str, false); } /// <summary> /// 格式化一段字符串, 将字符串中的 非预期的 幽灵字符 删除. /// <para>本函数将保留 空白符 \r 回车(CR) \n 换行(LF) \t 水平制表(HT) 这几个常用字符</para> /// <para>preserveRare 参数决定如下字符是否保留(true: 保留, false 剔除, 默认 false剔除): \a 响铃(BEL) \b 退格(BS) \f 换页(FF) \v 垂直制表(VT) \0 空字符(一般C++标识字符串结束) </para> /// <para>其他根本没见过的 幽灵字符 将直接剔除.</para> /// </summary> public static string FormatString(string str, bool preserveRare) { if (string.IsNullOrEmpty(str)) return string.Empty; StringBuilder sb = new StringBuilder(); foreach (char c in str) { if (c == ' ' || c == '\r' || c == '\n' || c == '\t') { sb.Append(c); continue; } if (c == '\a' || c == '\b' || c == '\f' || c == '\v' || c == '\0') { if (preserveRare) { sb.Append(c); } continue; } //这段代码感觉有性能问题,但细品之下却发现:毫无破绽 if (!char.IsWhiteSpace(c)) { sb.Append(c); continue; } //剩下的 幽灵字符 特殊处理: //经过测试: 0x0 - 0xFFFFFF 的 char 字符中, 幽灵字符 要么是 控制符, 要么是分割符. //如果是 分隔符, 我们将其替换成空格 //如果是 控制符, 我们将其直接剔除, if (char.IsSeparator(c)) { sb.Append(' '); continue; } //if (char.IsControl(c)) continue; //无意义代码,不需要执行:剩下的字符 通通过滤掉 } return sb.ToString(); }
吹风的兔子 2018-11-19
  • 打赏
  • 举报
回复
https://www.cnblogs.com/shuxiaolong/p/Ghost_Char.html
Never_Satisfied 2018-11-18
  • 打赏
  • 举报
回复
楼主的问题让我想到另一个事,把汉字转成数字后,有没有区间?就像字符串0-9,在数字48-59这个区间。
weixin_43726559 2018-11-18
  • 打赏
  • 举报
回复
用的性能,发现有个replaceBlank函数占用了10%的CPU时间
舉杯邀明月 2018-11-18
  • 打赏
  • 举报
回复
引用 36 楼 Never_Satisfied 的回复:
楼主的问题让我想到另一个事,把汉字转成数字后,有没有区间?就像字符串0-9,在数字48-59这个区间。

“汉字”如何转成数字?


你是说的“字符编码”吧?
如果是“字符编码”,当然是有区间的,对于汉字的ANSI编码或“国标码”,
 你可以搜索一下“汉字区位码”。
对于汉字的Unicode编码,主要集中在 2F00 到 9FB0 之间;
  当然前面点2400到25F0之间还有一些特殊符号、数字序号之类的汉字编码。
xiaoweifu2018 2018-11-17
  • 打赏
  • 举报
回复
学习下
weixin_43724149 2018-11-17
  • 打赏
  • 举报
回复
用查找替换空格应该也行呀
xregedit 2018-11-14
  • 打赏
  • 举报
回复
学习了,相互学习!
chunhaizhou 2018-11-13
  • 打赏
  • 举报
回复
自己写函数
Public sub NoSpace(strData as String)
dim i as integer,objstr as String
for i=1 to len(strData)
if mid$(strdata,i,1)<>chr$(32) then objstr = mid$(strdata,i,1)
next i
strData=objstr
End Sub
carroline12345 2018-11-13
  • 打赏
  • 举报
回复
用replace替换函数,或者用concat链接截取函数
此账号已关闭 2018-11-12
  • 打赏
  • 举报
回复
dim a() as byte a = strconv(text1,vbFromUnicode)
加载更多回复(24)

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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