截取字符串最后一个字符 && asp textarea 多行数组分割处理

这篇博客介绍了如何在ASP.NET和ASP中处理字符串,包括去除字符串最后一个字符以及处理textarea中多行数组的分割。在ASP.NET中,使用`Remove`方法可以移除字符串末尾的特定字符;在ASP中,通过`Right`和`Left`函数实现相同功能。同时,提到了JScript和VBScript中正则表达式的应用,以及处理textarea中回车符(chr(13))的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

asp.net 去除字符串右侧的最后一个字符

        string str = "HTML,Asp/Aspx,MySQL/Cgi/Java/Php,";

        str = str.Remove(str.LastIndexOf(","),1);

        Response.Write(str);

 

asp 去除字符串末尾的逗号 

<%
str="aaa,bbb,ccc,eee,"
if right(str,1)="," then
str=left(str,len(str)-1)
end if
%>  

JScript

代码
< script language = " javascript " >
function getLastLocation(str)
{
    var len 
=  str.length;    

    
for (var i = 0 ;i < len;i ++ )
    {
        var s 
=  str.substr(len - 1 - i, 1 );
        var c 
=  s.charCodeAt();
        
if ( (c  >   64   &&  c < 91 ||  (c  >   96   &&  c < 123 ))
        {
            
return  len - 1 - i;
        }
    }
}

var str;
str 
=   " 1B2A3 " ;

alert(getLastLocation(str));
</ script >

 

VBScript code

代码
< %
function  getLastLocation ( str )
getLastLocation = 0
=   len ( str )

for  i  =   0   to  l
    c  =   asc ( mid ( str ,l - i, 1 ))
    
if     (c > " 64 "   and  c < " 91 " or  (c > " 96 "   and  c < " 123 " )   then      
        getLastLocation  =  l - 1 - i
        
exit   for
    
end   if
next

end function  


str   =   " 1B2A3 "
response.Write getLastLocation( str )

% >

 

正则判断获取最后一个字母

代码
str3 = " [aa22233]sdfsd67f54[bbb]  "
Function  ReplaceQuestion3(QStr)
Dim  re
Set  re  =   new  RegExp
re.IgnoreCase  =   True
re.Global  =   True
re.Pattern  =   " [A-Za-z] "
Set  Matches  = re.Execute(QStr)
Set  re  =   Nothing
a = Matches.Count
ReplaceQuestion3 = Matches(a - 1 )

End Function
response.Write ReplaceQuestion3(str3) 

 

代码
// 取第一个字母
str3 = " [aa22233]sdfsd67f54[bbb]  "
Function  ReplaceQuestion3(QStr)
Dim  re
Set  re  =   new  RegExp
re.IgnoreCase  =   True
re.Global  =   True
re.Pattern  =   " [A-Za-z] "
Set  Matches  = re.Execute(QStr)
Set  re  =   Nothing
ReplaceQuestion3 =  Matches( 0 )

End Function
response.Write ReplaceQuestion3(str3) 

// 取所有字母
str3 = " [aa22233]sdfsd67f54[bbb]  "
Function  ReplaceQuestion3(QStr)
Dim  re
Set  re  =   new  RegExp
re.IgnoreCase  =   True
re.Global  =   True
re.Pattern  =   " [^A-Za-z] "
Set  Matches  = re.Execute(QStr)
Set  re  =   Nothing
For   Each  Match in Matches
QStr = Replace (QStr,Match.Value, "" )

Next
ReplaceQuestion3 =  QStr
End Function
response.Write ReplaceQuestion3(str3) 

 

正则的JS版

代码
function  GetLastLetterIndex(Str) 

var  Pat  =   / [A-Z] / igm;  // 不区分大小写  
var  TempArr  =  Str.split( "" );  // 倒入数组  
TempArr  =  TempArr.reverse();  // 倒序  
Str  =  TempArr.join( "" );  // 字符串倒序了  
var  re  =  Str.search(Pat);  // 按正则式搜索字母第1次出现的位置  
if (re  ==   - 1
   
return   0   // 如果没有,返回0  
else  
   
return  Str.length  -  re;  // 转换成倒序前的位置 
}
 alert(GetLastLetterIndex( " 1d253512dD3 " ));

 

vb获取最后一个字母

代码
// 扩展string的原型
String .prototype.trim = function (reg)
{
   
if (reg)
     
return  this.replace(reg, "" ); // 按给点正则清除不需要的字符
   
else
     
return  this.replace( /^/ s * | / s * $ / g, "" ); // 清除两端空白符号
}

// 试试下面的代码,在setURL时判断是否已经存在id,getCookie还是按照原来的
 
function  getCookie(name) {
        var arr,reg = new  RegExp( " (^| ) " + name + " =([^;]*)(;|$) " );
        
if (arr = document.cookie.match(reg))
            
return  unescape(arr[ 2 ]);            
        
else
            
return   "" ;
    }
function  FindIndex(arr,id) // 查找当前id是否在cookie中,用indexOf来查找不太精确,有可能存在111111时,而当前id为111会提示已经存在的错误
{
  
for (var i = 0 ;i < arr.length;i ++ )
   
if (arr[i] == id)
     
return  i;
  
return   - 1 ; // 未找到
}   
function  setURL(productId)
{
        var productId = " <%=id %> "
        var idc = getCookie( " test " ).trim().trim( /^/ || / |$ / g); // 去掉首尾的空白符号和|
        
if (idc == "" ) // 没有cookie
          setCookie( " test " ,productId);
        
else
        {      
           var ids =  idc.split( " | " ); // 分离  
           var OverMax = ids.length > 2 ? true : false ; // 是否大于存储的数量......... 
           var Index = FindIndex(ids,idc);
           
if (Index ==- 1 ) // 不存在
           {
             
if (OverMax) // 超过
                ids.splice(ids.length - 1 , 1 ); // 删除最后一个,也就是最早浏览的一个
             setCookie( " test " ,productId + " | " + ids.join( " | " )); // 注意使用|连接数组
            }
           
else // 存在
           {
              idc = productId;
              ids[Index] = "" ; // 清空这个下标的值
              
// 下面连接要存储的id
              
for (var i = 0 ;i < ids.length;i ++ )
              {
                 
if (ids[i]! = "" )
                   idc += " | " + ids[i];
              }
              setCookie( " test " ,idc);
           }
        }
 }扩展string的原型
String .prototype.trim = function (reg)
{
   
if (reg)
     
return  this.replace(reg, "" ); // 按给点正则清除不需要的字符
   
else
     
return  this.replace( /^/ s * | / s * $ / g, "" ); // 清除两端空白符号
}

// 试试下面的代码,在setURL时判断是否已经存在id,getCookie还是按照原来的
 
function  getCookie(name) {
        var arr,reg = new  RegExp( " (^| ) " + name + " =([^;]*)(;|$) " );
        
if (arr = document.cookie.match(reg))
            
return  unescape(arr[ 2 ]);            
        
else
            
return   "" ;
    }
function  FindIndex(arr,id) // 查找当前id是否在cookie中,用indexOf来查找不太精确,有可能存在111111时,而当前id为111会提示已经存在的错误
{
  
for (var i = 0 ;i < arr.length;i ++ )
   
if (arr[i] == id)
     
return  i;
  
return   - 1 ; // 未找到
}   
function  setURL(productId)
{
        var productId = " <%=id %> "
        var idc = getCookie( " test " ).trim().trim( /^/ || / |$ / g); // 去掉首尾的空白符号和|
        
if (idc == "" ) // 没有cookie
          setCookie( " test " ,productId);
        
else
        {      
           var ids =  idc.split( " | " ); // 分离  
           var OverMax = ids.length > 2 ? true : false ; // 是否大于存储的数量......... 
           var Index = FindIndex(ids,idc);
           
if (Index ==- 1 ) // 不存在
           {
             
if (OverMax) // 超过
                ids.splice(ids.length - 1 , 1 ); // 删除最后一个,也就是最早浏览的一个
             setCookie( " test " ,productId + " | " + ids.join( " | " )); // 注意使用|连接数组
            }
           
else // 存在
           {
              idc = productId;
              ids[Index] = "" ; // 清空这个下标的值
              
// 下面连接要存储的id
              
for (var i = 0 ;i < ids.length;i ++ )
              {
                 
if (ids[i]! = "" )
                   idc += " | " + ids[i];
              }
              setCookie( " test " ,idc);
           }
        }
 }

 


 

 

asp textarea 多行数组分割处理方法

 

 

在textarea中,回车符不是“/n”,应该是chr(13)。

所以对应的asp处理代码如下

代码如下:

dedearr = split (xiangguanid2, chr ( 13 ))  ' 分割成数组
for  dede = 0   to   ubound (dedearr) - 1   ' 数组长度减一,因为最后有两个chr(13)换行。
dedearr2 = split (dedearr(dede), " | " )
dedetitle
= dedearr2( 1 )
dedeurl
= dedearr2( 0 )
if  dedetitle <> ""   and  dedeurl <> ""   then
xiangguanart2
= xiangguanart2 & " <li><a href="" " & dedeurl & " "" title="" " & dedetitle & " "" target=""_blank""> " & dedetitle & " </a></li> "
end   if
next
end   if
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值