简单的数组操作字符串,加密可用

加密|数组|字符串

Public Function ary(str)
Dim a()
Dim b()
Dim lenstr '字符串长
Dim i, j '循环变量
Dim ouflag
lenstr = Len(str)
If lenstr Mod 2 = 1 Then
'长度为奇
ouflag = False
lenstr = lenstr + 1
ReDim a(2, lenstr / 2)
a(2, lenstr / 2) = Chr(20) '最后一个补空格
Else
'长度为偶
ReDim a(2, lenstr / 2)
ouflag = True
End If
ReDim b(lenstr / 2, 2)
For i = 1 To lenstr
If i <= lenstr / 2 Then
a(1, i) = Mid(str, i, 1)
Else
If ouflag = True Then
a(2, i - lenstr / 2) = Mid(str, i, 1)
Else
If i <> lenstr Then
a(2, i - lenstr / 2) = Mid(str, i, 1)
End If
End If
End If
Next
For i = 1 To 2
For j = 1 To lenstr / 2
b(j, i) = a(i, j)
Next
Next
For j = 1 To lenstr / 2
For i = 1 To 2
ary = ary & b(j, i)
Next
Next
If ouflag = False Then
ary = Left(ary, lenstr - 1)
End If
End Function
Public Function unary(str)
Dim a()
Dim b()
Dim lenstr '字符串长
Dim i, j '循环变量
Dim ouflag
lenstr = Len(str)
If lenstr Mod 2 = 1 Then
'长度为奇
ouflag = False
lenstr = lenstr + 1
ReDim a(lenstr / 2, 2)
a(lenstr / 2, 2) = Chr(20) '最后一个补空格
Else
'长度为偶
ReDim a(lenstr / 2, 2)
ouflag = True
End If
ReDim b(2, lenstr / 2)
For i = 1 To lenstr
If i = lenstr And ouflag = False Then
a(lenstr / 2, 2) = " "
Else
If i Mod 2 = 1 Then
a((i + 1) / 2, 1) = Mid(str, i, 1)
Else
a(i / 2, 2) = Mid(str, i, 1)
End If
End If
Next
For i = 1 To 2
For j = 1 To lenstr / 2
b(i, j) = a(j, i)
Next
Next
For i = 1 To 2
For j = 1 To lenstr / 2
unary = unary & b(i, j)
Next
Next
If ouflag = flag Then
unary = Left(unary, lenstr - 1)
End If
End Function

用了你就知道用处了:
dim strg
strg="123456789"
strg=ary(strg)

unary是解密

时间: 2024-08-01 20:28:32

简单的数组操作字符串,加密可用的相关文章

C#中字符串的加密可用DSA和RSA实现

C#中字符串的加密可以用DSA和 RSA,先要将字符串转换为字节数组,这与编码有关.再选择签名方式,有RSA和DSA,sign便是出来的签名结果.可以用DSA和RSA,如: using System;using System.Text;using System.Security.Cryptography; class dsa crypto_SignData {public static void Main(String[] args){//先要将字符串转换为字节数组,这与编码有关.String

js数组常见操作及数组与字符串相互转化实例详解_javascript技巧

本文实例讲述了js数组常见操作及数组与字符串相互转化方法.分享给大家供大家参考,具体如下: 数组与字符串的相互转化 <script type="text/javascript"> var obj="new1abcdefg".replace(/(.)(?=[^$])/g,"$1,").split(","); //字符串转化为数组 var obj2 = "new2abcdefg".split(&qu

PHP数组操作简单案例分析_php技巧

本文实例讲述了PHP数组操作相关技巧.分享给大家供大家参考,具体如下: 这个是一道简单的PHP数组入门题 $Str = "as5454654%^$%^$7675dhasjkdhh12u123123asdasd"; //将上面的统计上面字符串不同字符和出现的次数. 实现方式:将字符串转换成数组,在通过对数组的操作得到相应的结果. $len = strlen($str); //数组存在数组中 $array = array(); for($i=0;$i<$len;$i++) { arr

JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并)_javascript技巧

POP 删除最后一项 删除最后一项,并返回删除元素的值:如果数组为空则返回undefine var a = [1,2,3,4,5]; a.pop();//a:[1, 2, 3, 4] a.pop();//a:[1, 2, 3] a.pop();//a:[1, 2] shift 删除第一项 删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefine var a = [1,2,3,4,5]; a.shift(); //a:[2,3,4,5] a.shift(); //a:[3, 4,

Lua教程(五):C/C++操作Lua数组和字符串示例_Lua

本文将介绍如何在C/C++里面操作Lua的数组和字符串类型,同时还会介绍如何在C/C++函数里面存储Lua状态(registry和upvalue),而registry在使用C/C++自定义类型时非常有用,可以方便地为userdata指定metatable. C/C++操作Lua数组 Lua数组Overview 在Lua里面,数组只不过是key为整数的table而已.比如一个table为array = {12,"Hello", "World"},它是一个数组,可以用下

《C语言及程序设计》实践项目——字符数组与字符串处理

返回:贺老师课程教学链接 [项目1-M$pszi$y是嘛意思?]背景:小明让同学传纸条给小丽.小丽接到会心一笑,大家却不知所云.纸条上写着M$pszi$y,两人暗中约定是,真实字符为实际字符前面的第4个!M$pszi$y是神马意思?推算一下,或从ASCII码表中查一下,自然是I love u.(1)小明请你写一个程序,在给小丽写情书时,再不用费功夫自己"翻译",原信中每一个字符加密为其后的第4个字符.例,输入I love u,输出M$pszi$y.(2)小丽请你写一个程序,在看小明的情

javascript数组和字符串基本操作

Javascript数组基本操作     Javascript中的数组是一种特殊的对象,用来表示偏移量的索引是该对象的属性,索引可能是整数,然而这些数字索引在内部被转换为字符串类型,这是因为javascript对象中的属性名必须是字符串.  一:如何创建数组?    创建数组有2中方式,第一种是对象字面量如下:    var  arrs = [];  // 定义了一个空数组.    还有一种方式是:调用Array的构造函数创建数组    var arrs = new Array(); 二:数组的

脚本实例:用 JavaScript 来操作字符串

javascript|脚本|字符串 虽然 JavaScript 有很多用处,但是处理字符串是其中最流行的一个.下面让我们深入地分析一下使用 JavaScript 操作字符串.在 JavaScript 中, String 是对象. String 对象并不是以字符数组的方式存储的,所以我们必须使用内建函数来操纵它们的值.这些内建函数提供了不同的方法来访问字符串变量的内容.下面我们详细看一下这些函数. 包罗万象 操作字符串的值是一般的开发人员必须面临的家常便饭.操作字符串的具体方式有很多,比如说从一个

Ruby中操作字符串的一些基本方法

  这篇文章主要介绍了Ruby中操作字符串的一些基本方法,包括对字符串的压缩和解压缩等处理,需要的朋友可以参考下 在Ruby中的String对象持有和操纵的任意序列的一个或多个字节,通常表示人类语言的字符表示. 简单的字符串文本括在单引号(单引号字符).引号内的文本的字符串值: ? 1 'This is a simple Ruby string literal' 如果需要内放置一个单引号,单引号的字符串文字,在它前面加上一个反斜杠Ruby解释器不认为终止字符串: ? 1 'Won't you r