国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

ASP字符串操作的集中解決方法

2019-11-17 04:14:12
字體:
來源:轉載
供稿:網友

在無憂腳本上看到的《面試官的變態出題 asp字符串操作!》,發上來,以開拓思路。


 引用內容
現有兩個字符串:
a=“abcde”
b=“12345”
1.請編寫一組自定義函數,將上面兩個字符串轉換成:
c=“a1b2c3d4e5”
2.再將c=“a1b2c3d4e5” 逆轉換成
a=“abcde”
b=“12345”
時間:10分鐘內。


以下是幾個解題思路:
一、ASP解決:

 程序代碼
<%
function change_str(a,b)
    if len(a)>len(b) then
        length_=len(b)
    else
        length_=len(a)
    end if
    return_value=""
    for i=1 to length_
        return_value=return_value&mid(a,i,1)&mid(b,i,1)
    next
    change_str=return_value
end function
function change_str_(a)
    return_value_a=""
    return_value_b=""
    for i=1 to len(a)
        if i mod 2=0 then
            return_value_a=return_value_a&mid(a,i,1)
        else
            return_value_b=return_value_b&mid(a,i,1)
        end if
    next
    change_str_=return_value_b&return_value_a
end function
a="abcde"
b="12345"
response.Write(change_str_(change_str(a,b)))
%>


二、VbScript,與一思路相似:

 程序代碼
<script type="text/vbscript">
<!--
dim a,b,c
a="abcde"
b="12345"
c="a1b2c3d4e5"
msgbox addstr(a,b)
msgbox breakstr(c)

function addstr(a,b)
dim c
c=""
for i=1 to len(a)
c=c & mid(a,i,1) &mid(b,i,1)
next

addstr = c
End function


function breakstr(c)
dim a,b
a=""
b=""
for i=1 to len(c)
    if i mod 2 =1 then
        a = a & mid(c,i,1)
    else
        b = b & mid(c,i,1)
    End if
next

breakstr = "a=" & a & vbcrlf & "b=" & b

End function

-->
</script>


三、javaScript解決:

 程序代碼
<script language="Javascript">
function toghther(){
    var a = "abcde";
    var b = "12345";
    var c ="";
    var d ="";
    var e ="";
    var f = "";
    var a_1 = "";
    var b_1 = "";

    for (i=0;i<a.length;i++){
        a_1 = a.charAt(i);
        b_1 = b.charAt(i);
        c += a_1 + b_1;
    }
    alert(c);

    for (j=0;j<c.length;j++){
        if (j%2 == 0) { d += c.charAt(j);}
        else { e += c.charAt(j);}
    }
    alert(d);
    alert(e);
}

toghther();

</script>


四、JavaScript解決:


 程序代碼
<script type="text/javascript">
var a = "abcde";
var b = "12345";
function two2one(a, b){
    var i = 0;
    var z = b.split("");
    return a.replace(/(.)/g, function(x, y){
        return x + z[i ++];
    });
}
function one2two(c){
    var r1 = [], r2 = [];
    var i = 0;
    c.replace(/(.)/g, function(x, y){
        i ++ % 2 ? r1.push(y) : r2.push(y);
    });
    return [r2.join(""), r1.join("")];
}
var c = two2one(a, b);
alert(c);
var d = one2two(c);
var a = d[0];
var b = d[1];
alert(a + "/n" + b);
</script>


程序就是這樣的,很多種解決辦法,閑著沒事,給補上了一個,數組,主要是以前就寫過類似的函數為了自己使用。

http://m.survivalescaperooms.com/
程序代碼
<%
dim a:a = "abcde"
dim b:b = "12345"
dim aa:aa = toArray(a,"|")
dim bb:bb = toArray(b,"|")
dim cc:cc = AddStr(aa,bb,"|")

Response.write AddStr(aa,bb,"|")
Response.Write "<br>"
Call BreakStr(cc)

'將普通字符串轉為數組函數,方便入庫等操作
Function toArray(byVal StrA,byVal StrSplit)
dim StrALen,i,StrArray:StrALen = Len(StrA)
For i = 1 to StrALen
StrArray = StrArray & mid(StrA,i,1) & StrSplit
Next
StrArray = Left(StrArray, Len(StrArray)-1)
toArray = StrArray
End Function

Function AddStr(byVal ArrayA,byVal ArrayB,byVal StrSplit)
Dim ArrayASplit,ArrayBSplit,ArrayAUbound
ArrayASplit = Split(ArrayA,StrSplit)
ArrayBSplit = Split(ArrayB,StrSplit)
ArrayAUbound = Ubound(ArrayASplit)
dim i
For i = 0 to ArrayAUbound
    ArrayStr = ArrayStr & ArrayASplit(i) & ArrayBSplit(i)
Next
AddStr = ArrayStr
End Function

Sub BreakStr(byVal StrA)
dim ArrayA,ArrayASplit,ArrayAUbound,ArrayStrA,ArrayStrB
ArrayA = toArray(StrA,"|")
ArrayASplit = Split(ArrayA,"|")
ArrayAUbound = Ubound(ArrayASplit)
dim i,j
For i = 0 to ArrayAUbound
    if i mod 2=0 then
    ArrayStrA = ArrayStrA & ArrayASplit(i)
    Else
    ArrayStrB = ArrayStrB & ArrayASplit(i)
    end if
Next
Response.Write ArrayStrA & "<br>" &ArrayStrB
End Sub
%>


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 贺州市| 玉田县| 奉节县| 贵港市| 平泉县| 巴里| 鄂州市| 丹阳市| 河间市| 木兰县| 碌曲县| 唐山市| 绥棱县| 渑池县| 望奎县| 万山特区| 红桥区| 婺源县| 宁津县| 昌邑市| 新和县| 富宁县| 佳木斯市| 工布江达县| 鄂托克旗| 宜宾县| 西乡县| 明水县| 新巴尔虎左旗| 涿州市| 瓦房店市| 洞头县| 鸡东县| 兰西县| 桐梓县| 青阳县| 三河市| 永康市| 永和县| 洛扎县| 乌拉特前旗|