C#全角转换成半角并检查建议收藏

新建一个项目quanbanjiao,在此项目下新建一个类Class11usingSystem;2usingSystem.Web;3usingSystem.Text;45name

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

新建一个项目quanbanjiao,在此项目下新建一个类Class1

 1 using System;
 2 using System.Web;
 3 using System.Text;
 4 
 5 namespace quanbanjiao
 6 {
 7     public class Class1
 8     {
 9         /**/
10         /// <summary>
11         /// 判断字符是否英文半角字符或标点
12         /// </summary>
13         /// <remarks>
14         /// 32    空格
15         /// 33-47    标点
16         /// 48-57    0~9
17         /// 58-64    标点
18         /// 65-90    A~Z
19         /// 91-96    标点
20         /// 97-122    a~z
21         /// 123-126  标点
22         /// </remarks>
23         public static bool IsBjChar(char c)
24         {
25             int i = (int)c;
26             return i >= 32 && i <= 126;
27         }
28 
29         /**/
30         /// <summary>
31         /// 判断字符是否全角字符或标点
32         /// </summary>
33         /// <remarks>
34         /// <para>全角字符 - 65248 = 半角字符</para>
35         /// <para>全角空格例外</para>
36         /// </remarks>
37         public static bool IsQjChar(char c)
38         {
39             if (c == '\u3000') return true;
40 
41             int i = (int)c - 65248;
42             if (i < 32) return false;
43             return IsBjChar((char)i);
44         }
45 
46         /* http://www.cnblogs.com/roucheng/ */
47         /// <summary>
48         /// 将字符串中的全角字符转换为半角
49         /// </summary>
50         public static string ToBj(string type,string s)
51         {
52             if (s == null || s.Trim() == string.Empty) return s;
53 
54             StringBuilder sb = new StringBuilder(s.Length);
55             for (int i = 0; i < s.Length; i++)
56             {
57                 if (s[i] == '\u3000')
58                     sb.Append('\u0020');
59                 else if (IsQjChar(s[i]))
60                     sb.Append((char)((int)s[i] - 65248));
61                 else
62                     sb.Append(s[i]);
63             }
64 
65             //如果是int类型的,则只能输入int类型,否则自动设为0
66 
67             if (type.ToLower() == "int")
68             {
69                 try
70                 {
71                     Convert.ToInt32(sb.ToString());
72                 }
73                 catch
74                 {
75                     return "0";
76                 }
77 
78             }
79 
80  
81 
82             //如果是float或double类型的,则只能输入这两种类型,否则自动设为0
83             if (type.ToLower() == "float" || type.ToLower() == "double")
84             {
85                 try
86                 {
87                     Convert.ToDouble(sb.ToString());
88                 }
89                 catch
90                 {
91                     return "0";
92                 }
93             }
94             return sb.ToString();
95         }
96     }
97 }

 

测试的例子:

using System;
using System.Web;
using quanbanjiao;//项目名称为quanbanjiao

namespace quanbanjiao
{
    public partial class WebForm1 : System.Web.UI.Page
    {
// keleyi.com
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            TextBox1.Text = Class1.ToBj("string", TextBox1.Text.Trim());
        }
    }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120782.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 十进制数负三的二进制数补码为_-8的补码

    十进制数负三的二进制数补码为_-8的补码十进制转二进制补码(正负都可)指针初学将一个十进制正(负)整数转换为对应的二进制补码(用指针完成十进制转二进制:1.先判断该整数是正数还是负数如果是正数则二进制补码首位为1,且对应的二进制补码就是原.如果是负数则二进制补码为原码基础上取反且末位加1(加1则涉及进位)代码:#include”stdio.h”#include”Stdio.h…

    2022年10月19日
    1
  • 小记录

    小记录

    2022年4月3日
    37
  • 细说PyCharm的安装和配置[通俗易懂]

    细说PyCharm的安装和配置[通俗易懂]PyCharm的安装和设置PyCharm是一款非常好用的PythonIDE,由JetBrains开发和维护,(同时JetBrains还开发了另外一些知名IDE—-IntelliJIDEA和WebStorm)JetBrains官网:www.jetbrains.comPyCharm分为免费(Community,社区版)和收费的(Professional,专业版)通常情况下免费的版本就可以使用(学生党狂喜)PyCharm的安装包格式:pycharm-版本-日期安装步骤就是Next,选安装盘

    2022年8月29日
    3
  • egg-swagger token验证无效解决方案

    egg-swagger token验证无效解决方案先看效果注意,我这边只讲重点1、首先,egg-swagger怎么安装看我的这篇egg-swaggerdemo无数据库版2、无swagger的token验证我的这篇eggjstoken生成和验证demo3、我这边只讲,重点4、我下的是egg-swagger-doc依赖5、你发现你路由/listjwt可以验证,而swagger-ui的/api/user/list却不能验证正文你配置完swagger-ui之后要配置几个东西第一:你…

    2025年9月4日
    8
  • npm使用淘宝镜像(npm淘宝镜像安装依赖失败)

    一、node包管理二、网站网站:https://www.npmjs.com三、npm命令工具只要安装了node就已经安装了npmnpm–version查看版本号npminstall–globalnpm升级版本四、npm常用命令npminit生成package.json文件后面加-y可以跳过向导,快速生成npminstallnpminstall包名只下…

    2022年4月10日
    100
  • 大佬讲MBT[通俗易懂]

    大佬讲MBT[通俗易懂]大佬讲MBT网址:https://www.youtube.com/watch?v=TnuiEGS6iyc获取模型:1.手工创建(Manualcreation)2.基于事件接口(Eventbasedinference)ApplyregularlanguagelearningalgorithmstotracesMinimizeover/underapproximat…

    2025年8月10日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号