CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

如何把第一个空格替换成"#"

楼主iamduo(狄奥)2005-04-25 02:53:47 在 Web 开发 / ASP 提问

字符串如果第一个是空格则替换成"#"。  
  只讲第一个替换。  
      如何实现最简单? 问题点数:50、回复次数:8Top

1 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2005-04-25 08:14:39 得分 30

Replace   函数  
  请参阅  
  Filter   函数  
  要求  
  版本   2  
  返回字符串,其中指定数目的某子字符串被替换为另一个子字符串。  
   
  Replace(expression,   find,   replacewith[,   compare[,   count[,   start]]])  
  参数  
  expression    
  必选项。字符串表达式包含要替代的子字符串。    
  Find    
  必选项。被搜索的子字符串。    
  Replacewith    
  必选项。用于替换的子字符串。    
  Start    
  可选项。expression   中开始搜索子字符串的位置。如果省略,默认值为   1。在和count   关联时必须用    
  count    
  可选项。执行子字符串替换的数目。如果省略,默认值为   -1,表示进行所有可能的替换。在和   start   关联时必须用。    
  Compare    
  可选项。指示在计算子字符串时使用的比较类型的数值。有关数值,请参阅“设置”部分。如果省略,缺省值为   0   ,这意味着必须进行二进制比较。    
  设置  
  compare   参数可以有以下值:  
   
  常数   值   描述    
  vbBinaryCompare   0   执行二进制比较。    
  vbTextCompare   1   执行文本比较。    
   
  返回值  
  Replace   返回以下值:  
   
  如果   Replace   返回    
  expression   为零长度   零长度字符串   ("")。    
  expression   为   Null   错误。    
  find   为零长度   expression   的副本。    
  replacewith   为零长度   expression   的副本,其中删除了所有由   find   参数指定的内容。    
  start   >   Len(expression)   零长度字符串。    
  count   为   0   expression   的副本。    
   
  说明  
  Replace   函数的返回值是经过替换(从由   start   指定的位置开始到   expression   字符串的结尾)后的字符串,而不是原始字符串从开始至结尾的副本。  
   
  下面的示例利用   Replace   函数返回字符串:  
   
  Dim   MyString  
  MyString   =   Replace("XXpXXPXXp",   "p",   "Y")       '二进制比较从字符串左端开始。返回   "XXYXXPXXY"。  
  MyString   =   Replace("XXpXXPXXp",   "p",   "Y",   '文本比较从第三个字符开始。返回   "YXXYXXY"。3,,   -1,   1)    
  要求  
  版本   2  
   
  replace(str,"   ","#",1,1)Top

2 楼myshun(瞬)回复于 2005-04-25 09:33:23 得分 10

"liuxiaoyi666(兔子)"已经把Replace   函数的用法说的很详细了,方法很好。  
  不过也有一个比较麻烦的方法:首先用InStr(string1,string2)函数取出第一个空格的位置,然后用Left(string,num)和Right(string,num)得到前半段和后半段字符串,再用Replace(string1,string2,string3)函数替换前半段字符串中的空格为"#",最后用“&”再连接这两段字符串。呵呵,好麻烦。Top

3 楼QQgenie(妖魔鬼怪)回复于 2005-04-25 09:45:17 得分 10

呵呵  
   
  if   Left(string,1)="   "   then  
        string="#"&mid(string,2)  
  end   ifTop

4 楼king2410(<职位空缺>→("︶.︶メ)( ̄ε ̄メ)←什么都不懂)回复于 2005-04-25 09:49:10 得分 0

晕,replace(string,"   ","#",1,1)   不是最好的办法吗  
  Top

5 楼iamduo(狄奥)回复于 2005-04-25 21:34:00 得分 0

我自己的方法  
  Function   Replace_FirstBlank(expression)  
      If   mid(expression,1,1)<>"   "   Then  
          Replace_FirstBlank   =expression  
      Else  
  Dim   reg  
  Set   reg   =   New   RegExp  
  reg.Pattern   =   "   (.*?)"  
  reg.IgnoreCase   =   True  
  reg.Global   =   false  
  Replace_FirstBlank   =   reg.Replace(expression,"&nbsp;$1")  
          Set   reg=nothing  
      End   If  
  End   FunctionTop

6 楼zhutimy(慢刀手)回复于 2005-04-25 21:41:05 得分 0

<?php  
  $str="     abc   d   ";  
  if($str[0]=="   "){  
    $str[0]="#";  
  }  
  echo   $str;  
  ?>  
   
  要的是这样吗?Top

7 楼qiqunet(瑞旗·广东)回复于 2005-04-25 22:01:01 得分 0

 
   
   
   
  ////////////////////////////////////////////////////////////////////  
    回复人:   myshun(瞬)   (   )   信誉:100     2005-4-25   9:33:24     得分:   0      
     
         
  "liuxiaoyi666(兔子)"已经把Replace   函数的用法说的很详细了,方法很好。  
  不过也有一个比较麻烦的方法:首先用InStr(string1,string2)函数取出第一个空格的位置,然后用Left(string,num)和Right(string,num)得到前半段和后半段字符串,再用Replace(string1,string2,string3)函数替换前半段字符串中的空格为"#",最后用“&”再连接这两段字符串。呵呵,好麻烦。  
   
  /////////////////////////////////////////////////////////////  
   
   
   
                  经典做法!!!!!!!!!!!!!!  
   
   
   
   
   
       
     
   
   
  ////////////////////////////////////////////////  
   
  回复人:   king2410(什么都不懂)   (   )   信誉:100     2005-4-25   9:49:10     得分:   0      
     
         
  晕,replace(string,"   ","#",1,1)   不是最好的办法吗  
   
  ///////////////////////////////////////////  
       
  你试一下:  
   
  string="asss   ssd"  
  replace(string,"   ","#",1,1)    
   
  就知道什么是最好的办法了!·#!#  
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
  Top

8 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2005-04-25 23:10:10 得分 0

<SCRIPT   LANGUAGE="vbScript">  
   
  for   i=1   to   4  
    alert(FormatDateTime("2005-03-07",i))  
    next  
   
    str="2005-03-07"  
  str=formatdatetime(str,2)  
  msgbox   str  
  stringttt="asss   ssd"  
  stringttt=replace(stringttt,"   ","#",1,1)  
  alert(stringttt)  
  'http://community.csdn.net/Expert/topic/3915/3915115.xml?temp=.5134394   这个是word文档里用range的方法的  
    </SCRIPT>  
   
  赙赠点儿代码Top

相关问题

  • 请问如何将任意个空格替换成一个空格...
  • 如何把空格替换成%20,反之呢?
  • 如何将字符串中的空格全部替换成"&nbsp;"
  • 如何把网页中的"&nbsp;" 替换成空格,小弟求教
  • 表单中如何将textarea的值中的换行字符替换成空格,在线等!
  • 用正则如何替换前面的N个空格呢?
  • 如何用函数或者正则表达式替换空格?
  • 如何替换字符串中的所有空格,换行,回车,特殊空格?
  • 如何替换用户在textbox里输入的空格为&nbsp;啊?
  • 【在线等待】~~用正则如何替换前面的N个空格呢? ~~

关键词

  • 函数
  • 二进制
  • 选项
  • 执行
  • start
  • 字符串
  • 替换
  • 空格
  • replace
  • firstblank

得分解答快速导航

  • 帖主:iamduo
  • liuxiaoyi666
  • myshun
  • QQgenie

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo