精华内容
下载资源
问答
  • 无论怎样告诉用户用半角,都会有用全角分隔的情况,你可以测试一下新浪博客,全角空格就不能够被识别。为了能够正确识别全角空格、中文空格、全角逗号、连续空格在网上找了好所正则表达式,效果都不理想,而自己对...

    由于网站的文章都是用标签,就像新浪博客一样,最终这些标签都要写入数据库,都要运用数组。

    无论怎样告诉用户用半角,都会有用全角分隔的情况,你可以测试一下新浪博客,全角空格就不能够被识别。

    为了能够正确识别全角空格、中文空格、全角逗号、连续空格在网上找了好所正则表达式,效果都不理想,而自己对正则表达式又是一知半解,于是把网上找到的表达式拿过来,稍作修改,综合到一起,形成了下面得函数,虽然写的很笨拙,但却是有效的。

    简要说明:1、转换全角空格为半角空格,

    2、后过滤首尾空格,3、去除连续空格,4、替换全角逗号,5、用半角逗号替换空格

    这样处理后的字符串就很容易变成数组,写入数据库了。

    function maktag($tags)

    {

    $t1 = preg_replace('/\s(?=\s)/', '', $tags);

    $t2 = trim(preg_replace("/ +/", " ", $t1));

    $t3 = preg_replace('/\s(?=\s)/', '', $t2);

    $t4 = preg_replace('/,+/',',',$t3);

    $t5 = preg_replace('/( | )/i',',',$t4);

    return $t5;

    }

    有谁愿意指点一下,写个简洁的代码,不胜感激!欢迎光临小站伤感酒吧!

    展开全文
  • 昨天,遇到了一个技术问题。本来我在程序中用的trim()...后来经过查资料和研究,总结出了以下两种写法:一、字符串的字符替换法:思路:(1)将字符串中所以有的全角空格转换成两个半角空格(2)用trim()方法去掉字符...

    昨天,遇到了一个技术问题。本来我在程序中用的trim()方法来处理从JSP页面传来的值,后来在测试时,发现当我输入的是全角空格时,trim()方法失效。

    需求是这样的,只是去掉字符串两端的空格(不论是全角空格还是半角空格),字符串中间的空格不变。后来经过查资料和研究,总结出了以下两种写法:

    一、字符串的字符替换法:

    思路:(1)将字符串中所以有的全角空格转换成两个半角空格

    (2)用trim()方法去掉字符串两端的空格(此时全是半角空格)

    (3)将两个相邻的半角合成一个全角

    评价:这方法遇到字符串中间是半角+全角的时间,(3)步中有可能合并后,与原来

    不一样。

    原代码:

    public String  trim(String Str){

    String newstr = Str.replaceAll(" ","  ");

    newstr = newstr.trim();

    newstr = newstr.replaceAll("  "," ");

    return newstr;

    }

    二、正则表达式转换法:

    思路:利用正则表达式进行匹配替换。

    评价:这应该是正统的解决之道

    原代码:

    例1:

    public static String  trims(String Str,String Flag) {

    if (Str == null || Str.equals("")) {

    return Str;

    } else {

    Str =   ""+Str;

    if(   Flag   ==   "l"   ||   Flag   ==   "L"   )/*trim   left   side   only*/

    {

    String RegularExp =  "^[  ]+";

    return   Str.replaceAll(RegularExp,"");

    }

    else   if(   Flag   ==   "r"   ||   Flag   ==   "R"   )/*trim   right   side   only*/

    {

    String RegularExp =   "[  ]+$";

    return   Str.replaceAll(RegularExp,"");

    }

    else/*defautly,   trim   both   left   and   right   side*/

    {

    String RegularExp =   "^[  ]+|[  ]+$";

    return   Str.replaceAll(RegularExp,"");

    }

    }

    }

    例2:

    public static String trim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    //return leftTrim(rightTrim(str));

    return str.replaceAll("^[  ]+|[  ]+$","");

    }

    }

    public static String leftTrim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    return str.replaceAll("^[  ]+", "");

    }

    }

    public static String rightTrim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    return str.replaceAll("[  ]+$", "");

    }

    }

    给大家一个综合的测试类:

    public class Test {

    public static void main(String[] args) {

    System.out.println("leftTrim:" + leftTrim("   123  123  123   ") + ":");

    System.out.println("rightTrim:" + rightTrim("   123  123  123   ") + ":");

    System.out.println("trim:" + trim("   123  123  123   ") + ":");

    System.out.println("leftTrim:" + trims("   123  123  123   ","l") + ":");

    System.out.println("rightTrim:" + trims("   123  123  123   ","r") + ":");

    System.out.println("trim:" + trims("   123  123  123   ","a") + ":");

    }

    public static String trim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    //return leftTrim(rightTrim(str));

    return str.replaceAll("^[  ]+|[  ]+$","");

    }

    }

    public static String leftTrim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    return str.replaceAll("^[  ]+", "");

    }

    }

    public static String rightTrim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    return str.replaceAll("[  ]+$", "");

    }

    }

    public static String  trims(String Str,String Flag) {

    if (Str == null || Str.equals("")) {

    return Str;

    } else {

    Str =   ""+Str;

    if(   Flag   ==   "l"   ||   Flag   ==   "L"   )/*trim   left   side   only*/

    {

    String RegularExp =  "^[  ]+";

    return   Str.replaceAll(RegularExp,"");

    }

    else   if(   Flag   ==   "r"   ||   Flag   ==   "R"   )/*trim   right   side   only*/

    {

    String RegularExp =   "[  ]+$";

    return   Str.replaceAll(RegularExp,"");

    }

    else/*defautly,   trim   both   left   and   right   side*/

    {

    String RegularExp =   "^[  ]+|[  ]+$";

    return   Str.replaceAll(RegularExp,"");

    }

    }

    }

    }

    如果你也遇到这样的问题,希望以上的文字能帮助到你:),欢迎光临我的博客!

    展开全文
  • select replace(string,' ',''),怎么将 不管事半角全角空格替换掉 ,哪位大侠知道 告诉一下 谢谢
  • 解决PB无法直接识别全角空格问题,特写该函数,将字符串中的全角空格替换半角空格
  • 昨天,遇到了一个技术问题。本来我在程序中用的trim()...后来经过查资料和研究,总结出了以下两种写法:一、字符串的字符替换法:思路:(1)将字符串中所以有的全角空格转换成两个半角空格(2)用trim()方法去掉字符...

    昨天,遇到了一个技术问题。本来我在程序中用的trim()方法来处理从JSP页面传来的值,后来在测试时,发现当我输入的是全角空格时,trim()方法失效。

    需求是这样的,只是去掉字符串两端的空格(不论是全角空格还是半角空格),字符串中间的空格不变。后来经过查资料和研究,总结出了以下两种写法:

    一、字符串的字符替换法:

    思路:(1)将字符串中所以有的全角空格转换成两个半角空格

    (2)用trim()方法去掉字符串两端的空格(此时全是半角空格)

    (3)将两个相邻的半角合成一个全角

    评价:这方法遇到字符串中间是半角+全角的时间,(3)步中有可能合并后,与原来

    不一样。

    原代码:

    public String  trim(String Str){

    String newstr = Str.replaceAll(" ","  ");

    newstr = newstr.trim();

    newstr = newstr.replaceAll("  "," ");

    return newstr;

    }

    二、正则表达式转换法:

    思路:利用正则表达式进行匹配替换。

    评价:这应该是正统的解决之道

    原代码:

    例1:

    public static String  trims(String Str,String Flag) {

    if (Str == null || Str.equals("")) {

    return Str;

    } else {

    Str =   ""+Str;

    if(   Flag   ==   "l"   ||   Flag   ==   "L"   )/*trim   left   side   only*/

    {

    String RegularExp =  "^[  ]+";

    return   Str.replaceAll(RegularExp,"");

    }

    else   if(   Flag   ==   "r"   ||   Flag   ==   "R"   )/*trim   right   side   only*/

    {

    String RegularExp =   "[  ]+$";

    return   Str.replaceAll(RegularExp,"");

    }

    else/*defautly,   trim   both   left   and   right   side*/

    {

    String RegularExp =   "^[  ]+|[  ]+$";

    return   Str.replaceAll(RegularExp,"");

    }

    }

    }

    例2:

    public static String trim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    //return leftTrim(rightTrim(str));

    return str.replaceAll("^[  ]+|[  ]+$","");

    }

    }

    public static String leftTrim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    return str.replaceAll("^[  ]+", "");

    }

    }

    public static String rightTrim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    return str.replaceAll("[  ]+$", "");

    }

    }

    给大家一个综合的测试类:

    public class Test {

    public static void main(String[] args) {

    System.out.println("leftTrim:" + leftTrim("   123  123  123   ") + ":");

    System.out.println("rightTrim:" + rightTrim("   123  123  123   ") + ":");

    System.out.println("trim:" + trim("   123  123  123   ") + ":");

    System.out.println("leftTrim:" + trims("   123  123  123   ","l") + ":");

    System.out.println("rightTrim:" + trims("   123  123  123   ","r") + ":");

    System.out.println("trim:" + trims("   123  123  123   ","a") + ":");

    }

    public static String trim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    //return leftTrim(rightTrim(str));

    return str.replaceAll("^[  ]+|[  ]+$","");

    }

    }

    public static String leftTrim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    return str.replaceAll("^[  ]+", "");

    }

    }

    public static String rightTrim(String str) {

    if (str == null || str.equals("")) {

    return str;

    } else {

    return str.replaceAll("[  ]+$", "");

    }

    }

    public static String  trims(String Str,String Flag) {

    if (Str == null || Str.equals("")) {

    return Str;

    } else {

    Str =   ""+Str;

    if(   Flag   ==   "l"   ||   Flag   ==   "L"   )/*trim   left   side   only*/

    {

    String RegularExp =  "^[  ]+";

    return   Str.replaceAll(RegularExp,"");

    }

    else   if(   Flag   ==   "r"   ||   Flag   ==   "R"   )/*trim   right   side   only*/

    {

    String RegularExp =   "[  ]+$";

    return   Str.replaceAll(RegularExp,"");

    }

    else/*defautly,   trim   both   left   and   right   side*/

    {

    String RegularExp =   "^[  ]+|[  ]+$";

    return   Str.replaceAll(RegularExp,"");

    }

    }

    }

    }

    如果你也遇到这样的问题,希望以上的文字能帮助到你:),欢迎光临我的博客!

    本文出自 51CTO.COM技术博客

    展开全文
  • 全角空格的Unicode码是12288 16进制为 3000 在java里就是 '\u3000'   function ltrim(str) {   return str.replace(/^\s+/, ""); }  function rtrim(str) {  return str.replace(/\s+$/, ...

    全角空格的Unicode码是12288 
    16进制为 3000 
    在java里就是 '\u3000'

     

    function ltrim(str) { 

            return str.replace(/^\s+/, "");

    function rtrim(str) {

            return str.replace(/\s+$/, "");

    }

     

    以上两个方法中文空格在谷歌浏览器下可以替换掉,但是ie不行

    求方法

     

     

    展开全文
  • java全角空格转换半角空格

    千次阅读 2007-12-03 18:07:00
    半角的 字节码是 32,全角的字节码是 -95-95 ,我们只需在这里给它都替换成 32 就可以了。我在这里提供了一个类方法,可以将全角空字节码 换成 32半角字节码。很有用哦。public class RemoveSpaces { public static...
  • 今天项目中遇到一个二字节空白的问题,让人十分头疼,研究了半天才知道是全角空格,现将一点心得分享(有抄袭的部分),嘿嘿 [code]package com.eg.demo; /** * 半角全角转换及替换半角全角空白 * @author ...
  • CREATE FUNCTION [dbo].[FDT_DELETE_ZK_SPACE]( @str nvarchar(4000) ) returns nvarchar(4000) as begin declare @endp int,@endflag int,@length int,@i int,@j int, @appstr nvarchar(4000) ,@reversestr ...
  • 有时候复制网上的代码会出现编译不通过的问题,报类似这样的一个问题:error: stray '\161' in...原理是从文字的字节码中将全角空格的字节码(161)替换半角空格的字节码(32):主要代码:public static string FullW...
  •  需求是这样的,只是去掉字符串两端的空格(不论是全角空格还是半角空格),字符串中间的空格不变。后来经过查资料和研究,总结出了以下两种写法: 一、字符串的字符替换法:  思路:(1)将字符串中所以有的...
  • 转换为int型,因为Excel中的部分城市编码带有空格,因此需要在代码中将其转换为String类型,再进行字符串的trim()操作,结果发现trim()操作后并不能除去空格,又试着用正则表达式匹配替换,str = str.replaceAll("\\...
  • PHP有关去空格的正则表达式

    千次阅读 2018-01-10 10:50:08
    1.去后导空格(包括半角空格和全角空格)的正则表达式先用正则表达式$str=ereg_replace("( | )*$","",$str)将字符串结尾处的半角空格和全角空格半角空格替换,然后再用函数trim($str)即可2.去前导空格(包括半角...
  • 所有空格替换

    2012-06-25 10:48:44
    所有空格替换,包含英文空格、全角空格半角空格 java.util.regex.Pattern pattern = java.util.regex.Pattern.compile("[\\s\\p{Zs}]"); Matcher re = pattern.matcher(str); str=re....
  • //替换中文全角空格半角空格,便于判断所有字符串为""的情况 private String replaceCNSpace(String mString) { Pattern p = Pattern.compile(" ");//中文空格 Matcher m = p.matcher(mString); String after =...
  • # 转换说明 # 全角半角转换说明 # 有规律(不含空格): # # 全角字符unicode编码从65281~65374 ...# 正则直接把全角空格替换半角空格 text2 = re.sub('\s+', ' ', str1) # # 除空格外,全角/半角按unicode编码
  • 过滤掉字符串中的空格时,要注意全角空格半角空格的区别 string a="半角空格 ,全角空格 。" 要过滤掉字符串a中的空白字符,就必须半段半角的和全角的(mark:全角的空格不等于两个半角的空格) 开始处理的时候...
  • 去掉全角空格

    2011-04-03 11:02:00
    有时候复制网上的代码会出现编译不通过的问题,报类似这样的一个问题:error: stray '\161' in...原理是从文字的字节码中将全角空格的字节码(161)替换半角空格的字节码(32): 主要代码: public static string ...
  • 现在web中的一种元素就是tag,即为标签,咱们发表很多新闻,或者上传图片给图片描述,都会用到tag,输入tag的时候往往对于中文用户来说会有全角标点符号,传统的标点分隔符是逗号,所以在处理逗号的时候就会有一些小...
  • 使用C#去掉全角空格

    千次阅读 2011-04-03 11:01:00
    有时候复制网上的代码会出现编译不通过的问题,报类似这样的一个...原理是从文字的字节码中将全角空格的字节码(161)替换半角的字节码(32): 主要代码: public static string FullWidthToHalfWidth(string str) { b
  • php 把全角字符转换成半角

    千次阅读 2014-02-26 10:29:26
    其实原理很简单,也很笨吧,就是把所有的全角字符替换成对应的半角字符,摘自ecshop开源代码里面。/** * 将一个字串中含有全角的数字字符、字母、空格或'%+-()'字符转换为相应半角字符 * * @access public * @...
  • php中替换字符串中的空格为逗号

    千次阅读 2018-05-12 09:40:58
    <?php /* * 关键词中的空格替换为逗号 */ function emptyreplace($str){ $str = str_replace(' ',' ',$str); //..替换全角空格半角空格 $str = str_replace(' ',' ',$str); ...
  • 主要介绍了JS正则替换去空格的方法,结合实例形式对比分析了针对全角半角空格的删除技巧,涉及replace正则替换的使用方法,需要的朋友可以参考下
  • Vim替换Tab为逗号 因neo4j导入关系文件需要,将分隔符号同意为,做如下处理 1、TAB替换空格: #设置tab为1个空格 :set ts=1 :set expandtab ...3、替换半角,为全角, :%s/,/,/g 4、替换空格为, :%s/ /,/g ...
  • 今天在网查到一篇介绍php中替换字符串中的空格为...?... //替换全角空格半角 $str = str_replace(‘ ‘, ‘ ‘, $str); //替换连续的空格为一个 $noe = false; //是否遇到不是空格的字符 for ($i=0 ; $i<strlen($str
  • 现在的项目基于Java,...尝试在取得返回結果后replace全角空格半角,后来又尝试在client中用js去替换。效果都不是很好,后来突然发现是由于查询語句中一个参数设置导致。 无语。。。 在Java中调用Bing Sear...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 146
精华内容 58
关键字:

半角空格替换全角空格