-
C#输入全角转半角以及格式检查
2011-09-30 14:41:36/// 判断字符是否英文半角字符或标点 /// /// /// 32 空格 /// 33-47 标点 /// 48-57 0~9 /// 58-64 标点 /// 65-90 A~Z /// 91-96 标点 /// 97-122 a~z /// ...新建一个项目quanbanjiao,在此项目下新建一个类Class1
using System;
using System.Web;
using System.Text;namespace quanbanjiao
{
public class Class1
{
/**/
/// <summary>
/// 判断字符是否英文半角字符或标点
/// </summary>
/// <remarks>
/// 32 空格
/// 33-47 标点
/// 48-57 0~9
/// 58-64 标点
/// 65-90 A~Z
/// 91-96 标点
/// 97-122 a~z
/// 123-126 标点
/// </remarks>
public static bool IsBjChar(char c)
{
int i = (int)c;
return i >= 32 && i <= 126;
}/**/
/// <summary>
/// 判断字符是否全角字符或标点
/// </summary>
/// <remarks>
/// <para>全角字符 - 65248 = 半角字符</para>
/// <para>全角空格例外</para>
/// </remarks>
public static bool IsQjChar(char c)
{
if (c == '\u3000') return true;int i = (int)c - 65248;
if (i < 32) return false;
return IsBjChar((char)i);
}/**/
/// <summary>
/// 将字符串中的全角字符转换为半角
/// </summary>
public static string ToBj(string type,string s)
{
if (s == null || s.Trim() == string.Empty) return s;StringBuilder sb = new StringBuilder(s.Length);
for (int i = 0; i < s.Length; i++)
{
if (s[i] == '\u3000')
sb.Append('\u0020');
else if (IsQjChar(s[i]))
sb.Append((char)((int)s[i] - 65248));
else
sb.Append(s[i]);
}//如果是int类型的,则只能输入int类型,否则自动设为0
if (type.ToLower() == "int")
{
try
{
Convert.ToInt32(sb.ToString());
}
catch
{
return "0";
}}
//如果是float或double类型的,则只能输入这两种类型,否则自动设为0
if (type.ToLower() == "float" || type.ToLower() == "double")
{
try
{
Convert.ToDouble(sb.ToString());
}
catch
{
return "0";
}
}
return sb.ToString();
}
}
}测试的例子:
using System;
using System.Web;
using quanbanjiao;//项目名称为quanbanjiaonamespace quanbanjiao
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}protected void Button1_Click(object sender, EventArgs e)
{
TextBox1.Text = Class1.ToBj("string", TextBox1.Text.Trim());
}
}
} -
【字符转换】——全角和半角转换
2019-06-23 17:29:17背景 在我们使用搜狗输入法的时候会有全角和半角的切换,首先看一下这两者的区别吧 ...1、在中文输入法中,切换全角和半角格式的快捷键为SHIFT+空格。 2、一般的系统命令是不用全角字符的,只是...背景
在我们使用搜狗输入法的时候会有全角和半角的切换,首先看一下这两者的区别吧
全角,指一个字符占用两个标准字符位置的状态,也是排字的度量单位,宽度等于所使用的文字的磅数汉。
半角,即一个字符占用一个标准字符的位置,排字的量度单位,宽度等于同一磅数全角的一半。
全角和半角的使用
1、在中文输入法中,切换全角和半角格式的快捷键为SHIFT+空格。
2、一般的系统命令是不用全角字符的,只是在作文字处理的时候才会使用全角字符。
3、在编程序的源代码中只能使用半角标点,但是字符串内部的数据可以使用全角字符或者全角标点。
4、在不支持汉字等语言的计算机上只能使用半角标点。其实,在这种情况下根本就不存在全角半角的概念了。
5、在汉字输入法中,输入的字母数字默认为半角,但是标点则是默认为全角。
6、在进行中文处理时,汉字和标点符号使用全角,字母、其它符号和数字使用半角。即王码五笔字型中的默认输入状态就是。
在进行英文处理时,如:英文输入、编写程序、电子邮件地址、网站URL等。全部使用半角进行处理。
但是我们在日常开发的过程中可能需要对输入的字符进行校验,规则只能是全角字符或者是半角字符,这样我们就需要对校验的字符进行装换,所以才有了这篇文章。
一、代码
/** * @author 2019/6/23 16:49 */ public class CharacterUtil { /** * 半角对应ASCII表中可见字符从!开始,偏移位值为33(Decimal) */ private static final char DBC_CHAR_START = 33; /** * 半角对应ASCII表中可见字符到~结束,偏移位值为126(Decimal) */ private static final char DBC_CHAR_END = 126; /** * 全角对应于ASCII表的可见字符从!开始,偏移值为65281 */ private static final char SBC_CHAR_START = 65281; /** * 全角对应于ASCII表的可见字符到~结束,偏移值为65374 */ private static final char SBC_CHAR_END = 65374; /** * ASCII表中除空格外的可见字符与对应的全角字符的相对偏移 */ private static final int CONVERT_STEP = 65248; /** * 全角空格的值,它没有遵从与ASCII的相对偏移,必须单独处理 */ private static final char SBC_SPACE = 12288; /** * 半角空格的值,在ASCII中为32(Decimal) */ private static final char DBC_SPACE = 32; /** * <PRE> * 半角字符->全角字符转换 * 只处理空格,!到˜之间的字符,忽略其他 * </PRE> */ private static String bj2qj(String src) { if (src == null) { return null; } StringBuilder buf = new StringBuilder(src.length()); char[] ca = src.toCharArray(); for (char c : ca) { if (c == DBC_SPACE) { // 如果是半角空格,直接用全角空格替代 buf.append(SBC_SPACE); } else if ((c >= DBC_CHAR_START) && (c <= DBC_CHAR_END)) { // 字符是!到~之间的可见字符 buf.append((char) (c + CONVERT_STEP)); } else { // 不对空格以及ascii表中其他可见字符之外的字符做任何处理 buf.append(c); } } return buf.toString(); } /** * <PRE> * 全角字符->半角字符转换 * 只处理全角的空格,全角!到全角~之间的字符,忽略其他 * </PRE> */ private static String qj2bj(String src) { if (src == null) { return null; } StringBuilder buf = new StringBuilder(src.length()); char[] ca = src.toCharArray(); for (char c : ca) { if (c == SBC_SPACE) { buf.append(DBC_SPACE); } else if (c >= SBC_CHAR_START && c <= SBC_CHAR_END) { buf.append((char) (c - CONVERT_STEP)); } else { buf.append(c); } } return buf.toString(); } public static void main(String[] args) { String s1 = "gsrtt art j r sfweegarv 哈哈哈"; String s2 = "erg Ddca sdvdv777774aaa好啊 好啊"; String s3 = " 11"; String s4 = " 11"; System.out.println(s1 + "==" + qj2bj(s1)); System.out.println(s2 + "==" + qj2bj(s2)); System.out.println(s3 + "==" + qj2bj(s3)); System.out.println(s4 + "==" + qj2bj(s4)); System.out.println(s1 + "==" + bj2qj(s1)); System.out.println(s2 + "==" + bj2qj(s2)); System.out.println(s3 + "==" + bj2qj(s3)); System.out.println(s4 + "==" + bj2qj(s4)); } }
二、结果验证
Connected to the target VM, address: '127.0.0.1:61997', transport: 'socket' gsrtt art j r sfweegarv 哈哈哈==gsrtt art j r sfweegarv 哈哈哈 erg Ddca sdvdv777774aaa好啊 好啊==erg Ddca sdvdv777774aaa好啊 好啊 11== 11 11== 11 gsrtt art j r sfweegarv 哈哈哈==gsrtt art j r sfweegarv 哈哈哈 erg Ddca sdvdv777774aaa好啊 好啊==erg Ddca sdvdv777774aaa好啊 好啊 11== 11 11== 11 Disconnected from the target VM, address: '127.0.0.1:61997', transport: 'socket'
-
WordPress文章半角和全角的处理
2013-03-08 22:40:14代码在wordpress站点中复制来,标点引号半角格式自动会变成全角格式。 在主题文件目录下,找到文件functions,打开添加如下代码即可。 wordpress建站,干掉一切麻烦,欢自己一个舒心~ 转载...罪魁还是由于WordPress太“智能”了。代码在wordpress站点中复制来,标点引号半角格式自动会变成全角格式。
在主题文件目录下,找到文件functions,打开添加如下代码即可。
<?php remove_filter('the_content', 'wptexturize'); ?>
wordpress建站,干掉一切麻烦,欢自己一个舒心~
转载 百度不死 WordPress文章半角和全角
-
把全角数字(及字母)转换成半角数字
2011-04-10 10:44:00下属各部门报来的总结材料中,其中的数字,有的是全角格式的,有的是半角格式的,看起来很不规范,我们将其统一转换成半角字符吧:按下“Ctrl+A”组合键选中全文,执行“格式→更改大小写”命令,打开“更改大...下属各部门报来的总结材料中,其中的数字,有的是全角格式的,有的是半角格式的,看起来很不规范,我们将其统一转换成半角字符吧:按下“Ctrl+A”组合键选中全文,执行“格式→更改大小写”命令,打开“更改大小写”对话框(如图2),选中其中的“半角”选项,“确定”一下就成了。
-
全角和半角
2018-05-12 23:31:57「全角」和「半角」是指计算机中CJK 字符的显示格式。(读完全文就可知,这是个不算太严谨但可以稍加补充解释,就能严谨的定义) 字符存储空间 在计算机字符被设计时,西方字符,例如拉丁字母、符号和数字都被... -
java 日文全角转半角_java中全角转换为半角的方法
2021-02-28 14:16:30在获取文本的时候,经常遇到数据格式的问题,需要判断或转换。本文旨在解决全角符号转换为半角符号的问题。网上大体有两种方法:转换编码或者替换。我使用的是转换编码,引用自:... -
全角符号转半角 java_java中全角转换为半角的方法
2021-03-09 01:03:19在获取文本的时候,经常遇到数据格式的问题,需要判断或转换。本文旨在解决全角符号转换为半角符号的问题。网上大体有两种方法:转换编码或者替换。我使用的是转换编码,引用自:... -
全角数字正则匹配后输出半角数字
2018-07-11 13:25:48全角数字正则匹配后输出半角数字,可以把日期字符串中的全角转换成半角,又便于转换成日期格式 -
全角半角与常见编码格式(ASCll、ANSI、GB2312、GBK、Unicode、UTF-8/UTF-16)总结
2020-10-20 13:37:09在学习常见编码格式前先对一些基础知识进行总结: 1、计算机数据存储单位 位(bit):最基本的概念。计算机中由于只有逻辑0和逻辑1的存在,因此很多东西、动作、数字都要表示为一串二进制的字码。其中每一个逻辑0... -
半角与全角的区别
2017-09-29 11:30:38在word中,当显示全部隐藏字符的时候(【工具】-->【选项】--->【视图】-->【格式标记】,选择全部),发现全角状态下和半角状态下空格标识符是不一样的,全角状态下是个灰色的方形,半角状态下是个 -
中文转码器可转换简繁和半角全角.rar
2019-09-04 18:38:25能够转换文件、转换剪贴板中的文字字符到目标格式;中文简体字/繁体字转换选项:一、不转换;二、将繁体字转换为简体字;三、将简体字转换为繁体字;半角/全角字符转换:一、不转换;二、将半角字符转换为全角字符;... -
mac 全角/半角标点符号切换
2019-10-01 17:04:00快捷键:option+shift+H ...记性有点差的我,经常是option、shift、command、control两两排列组合+H进行尝试,然后就误将符合切换为半角,直接后果是中文输入的标点符合也全部变为半角。网上搜了很久都找不到解决... -
输入法中的全角与半角的区别
2019-04-26 11:24:09最近在写论文的时候,由于参考文献的格式涉及到了全角与半角的问题,故来到了网上冲浪,希望可以找到二者到底有何区别。经过一番操作,基本弄清了二者的来源于区别,记录于下: 1.在计算机屏幕上,一个汉字要占两个... -
输出该长方形的周长C和面积S,要求格式如例(请注意打印“C:”、“S:”,使用半角冒号,参考样例输出)。
2021-02-07 10:02:50输入一个长方形的长和宽(整数),输出该长方形的周长C和面积S,要求格式如例(请注意打印“C:”、“S:”,使用半角冒号,参考样例输出)。 #include<stdio.h> int main() { int a,b; scanf("%d %d", &a, ... -
在Pandas中实现字符全角到半角的转换
2019-05-17 17:15:04在Pandas中实现字符全角到半角的转换代码输入数据(List格式)输出结果 在文本处理中,有时会遇到英文字符全角和半角互转的问题,单个字符串的转换方式可参见https://www.jb51.net/article/124269.htm 更多的时候... -
dreamweaver半角空格_轻松处理Dreamweaver段落缩进
2020-12-21 16:45:22我们在用Drwamweaver书写英文文本时,段落一般不缩进(不支持半角空格);但我们大多的时候都是用中文书写格式,必须在每段开头空两个汉字的位置。但浏览器对于文本中的空格,不管多少只认一个空格。如何在Drwamweaver... -
Word编写代码时输出半角引号
2019-07-17 08:36:33工具——自动更正选项——键入时自动套用格式,去掉直引号替换为弯引号。 转载于:https://www.cnblogs.com/xiexiaokui/p/3943012.html -
Ruby 中关于日文转UTF-8及半角全角转换的技巧
2021-01-02 12:32:131.日文转UTF-8 Iconv.new(‘cp932’, ‘utf-8’)与Iconv.new(‘shift_jis’, ‘utf-8’)的区别 Iconv.new(‘shift_jis’, ‘utf-8’)不支持以下的格式: 課№001-18 XXXXXXX 而只能把字符窜中的№换成No.才行 但是... -
Word 2003/2007全角半角来回转
2009-08-24 12:28:00用Word写作,免不了引用网页或PDF文档等处的资料,很多时候粘贴过来的英文或数字... Word 2003:首先选中需要相互转换的英文字母或数字等,单击“格式”菜单下的“更改大小写”命令,打开如图1所示对话框。如果被选中的 -
网页半角空格的发现
2009-04-11 14:36:28或者在留言板、论坛页面打的空格,也都不起作用。... 我们知道,Unicode码和ASCII码包括了所有的...十进制编码的HTML格式是&#数字;,例如在HTML模式下输入“&#25105;”,IE浏览就会... -
字符串操作-随机字符串, 全角转换为半角
2015-04-27 13:52:08提供一些项目中常用的字符串操作功能包括:截取字符串长度、输出转换、随机字符串、全角半角转换、字符集转换、邮箱格式验证、数字转文件大小. -
java中全角转换为半角的方法
2009-10-28 16:19:00在获取文本的时候,经常遇到数据格式的问题,需要判断或转换。本文旨在解决全角符号转换为半角符号的问题。网上大体有两种方法:转换编码或则替换。我使用的是转换编码 1. string checkStr="123456"; 2. //判断... -
python全角和半角之间的转换
2016-05-29 21:49:10源文件格式如下: 11387164 1994/m 年/q 7/m /n 月/n ,/w 完成/v 第二/m 稿/Ng 11387163 /n 1992/m 年/q 底/f ,/w 在/p 妞妞/nr 死/v 后/f 一/m 年/q ,/w 我/r 把/p 自己/r 关/v 在/p 屋/n 里/f ,/... -
在获取网页时半角全角字符混合的问题
2015-05-16 22:56:18获取的数据在解析成中文时由于字符中包含半角和全角的字符,总是不能全部显示正确。一开始总想有什么解析方法可以用来处理这种数据。网页本身是utf-8格式,按理来说不应该有这个问题。后来发现是Dotnet中WebClient类... -
全角半角转换(利用word2003 2007 自带功能)
2012-06-06 21:24:16工具栏中【“格式】-->【更改大小写】 在word2007中 首先也是选择要编辑的文字 然后,在字体的编辑栏中 B I U 等的边上 ,有一个 Aa这样的图标, 点击之后会出来一个菜单,选择"半角"即可。 ... -
禁止 WORDPRESS 将英文半角符号转换成全角符号(字符转义)
2016-03-24 09:51:54WordPress 模式使用了 wptexturize 函数将纯文本字符转换成格式化的 HTML 实体。标签, , , , 和<tt> 中的文本被忽略。对于一般写单纯码文字的人来说,这个自动将英文半角符号转换成全角符号,是很方便、智能。但如果... -
获取txt文件正确编码后读取文件内容,将内容中全角转半角
2018-07-25 01:26:26但txt文件编码格式又不统一,文件内容存在全角字符,无奈自己查询学习后编写了个工具类,其中提供:获取txt文件编码格式(中文简体系统使用,其他系统语言可修改使用),全角转半角功能,废话少说,看代码: ... -
注意用户体验细节--把窗体控件输入由全角转换为半角
2017-12-04 13:04:00有一次,一个用户埋怨,说我输入的电子邮件内容是正常的,为什么不允许输入,保存不成功,老是提示格式有问题。 又有一次,另外一个用户埋怨,为输入的数字式正确的,可以跳出数字输入控件后,内容有变为0了,怎么回... -
UTF-8编码下PHP全角符号替换成半角
2019-10-03 13:21:32现在web中的一种元素就是tag,即为标签,...1、假设网页编码格式为GBK,那么其实在输入端就很方便的进行控制了,自动的将输入的中文逗号“,”(或者空格等其他符号)转换成英文逗号“,”,转换逗号的代码如下: ... -
文本处理(一)全角转半角及正则匹配
2018-04-30 19:17:50最近遇到一些情况需要对文本进行预处理,目的是从...内容格式如下:其中有一部分内容还含有数字,例如这样: df_with_num=df[df['0116'].str.contains(r"\d")] df_with_num.head() Out[82]: vid \ 67 ...