统一文本长度
如图,我想把字母与汉字统一长度,请问下什么弄,<火山程序 类型 = "通常" 版本 = 1 />
方法 按钮_被单击 <接收事件 类型 = 整数 注释 = "当按钮被单击后发送此事件">
参数 来源对象 <类型 = 按钮 注释 = "提供事件产生的具体来源对象">
参数 标记值 <类型 = 整数 注释 = "用户调用\"挂接事件\"命令时所提供的\"标记值\"参数值,非此方式挂接事件则本参数值固定为0.">
{
如果 (来源对象 == 按钮1)
{
调试输出 (统一长度 ("abc") + "|")
调试输出 (统一长度 ("统一") + "|")
}
返回 (0)
}
方法 统一长度 <类型 = 文本型 折叠>
参数 传入内容 <类型 = 文本型>
{
变量 内容长度 <类型 = 整数>
变量 需求长度 <类型 = 整数>
变量 返回内容 <类型 = 文本型>
变量 补齐字符 <类型 = 文本型>
需求长度 = 10
补齐字符 = "."
内容长度 = 取文本长度 (传入内容) + 取文本长度 (补齐字符)
返回内容 = 传入内容
如果真 (需求长度 > 内容长度)
{
计次循环 (需求长度 - 内容长度)
{
如果 (假)
{
返回内容 = 补齐字符 + 返回内容
}
否则
{
返回内容 = 返回内容 + 补齐字符
}
}
}
返回 (返回内容)
}
你用等宽字体才有意义啊,即严格两个半角字符等于一个全角字符
<火山程序 类型 = "通常" 版本 = 1 />
方法 统一长度 <类型 = 文本型>
参数 传入内容 <类型 = 文本型>
参数 目标长度 <类型 = 整数>
参数 补齐字符 <类型 = 字符 @默认值 = '.'>
{
变量 内容长度 <类型 = 整数>
内容长度 = 取文本长度 (传入内容)
如果 (内容长度 >= 目标长度)
{
返回 (传入内容)
}
变量 结果 <类型 = 文本型>
变量 半角长度 <类型 = 整数>
结果 = 传入内容
计次循环 (内容长度)
{
如果 (取字符 (结果, 取循环索引 ()) < 128)// 是否为ASCII字符
{
半角长度 = 半角长度 + 1
}
否则
{
半角长度 = 半角长度 + 2
}
}
加入重复字符 (结果, 补齐字符, 目标长度 * 2 - 半角长度)
返回 (结果)
}
<火山程序 类型 = "通常" 版本 = 1 />
方法 统一长度 <类型 = 文本型>
参数 传入内容 <类型 = 文本型>
参数 需求长度 <类型 = 整数>
参数 补齐字符 <类型 = 文本型 @默认值 = " ">
{
变量 ""
变量 剩余长度 <类型 = 整数>
变量 返回内容 <类型 = 文本型>
调试输出 (取字节集长度 (文本到多字节 (传入内容, 假)))
剩余长度 = 需求长度 - 取字节集长度 (文本到多字节 (传入内容, 假))
如果真 (剩余长度 > 0)
{
传入内容 = 传入内容 + 取重复文本 (补齐字符, 剩余长度)
}
返回 (传入内容)
}
Xelloss0618 发表于 2023-5-22 00:59
你用等宽字体才有意义啊,即严格两个半角字符等于一个全角字符
谢谢!!! b0y 发表于 2023-5-22 03:48
方法 统一长度
参数 传入内容
参数 需求长度
谢谢!!!
页:
[1]