如何将身体中的数字替换为波斯数字? [英] how to replace numbers in body to persian numbers?

查看:147
本文介绍了如何将身体中的数字替换为波斯数字?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想将html内容中的每个数字转换为波斯数字,而不会影响页面元素。

例如:
$ b

 < div style ='color:#c2c2c2'> 
文字编号1
< span>文字编号2< / span>
< div>
文字编号3
文字编号4
< a href ='#page2'>文字编号5< / a>
< / div>
< / div>

转换为:

 < div style ='color:#c2c2c2'> 
文字编号1
< span>文字编号2< / span>
< div>
文字编号3
文字编号4
< a href ='#page2'>文字编号5< / a>
< / div>
< / div>

persian = array('0','1','2','3','4','5','6','7','8','9 );
english = array('0','1','2','3','4','5','6','7','8','9');

谢谢。

解决方案

你可以使用这个方法:( http://jsfiddle.net/A4NfG/1/
$ b

  persian = {0:'0',1:'1',2:'2',3 : '3',4: '4',5: '5',6: '6',7: '7',8: '8',9: '9'}; 
函数遍历(el){
if(el.nodeType == 3){
var list = el.data.match(/ [0-9] / g);
if(list!= null&& list.length!= 0){
for(var i = 0; i< list.length; i ++)
el.data = el .data.replace(列表[I],波斯[列表[I]]);
}
}
for(var i = 0; i< el.childNodes.length; i ++){
traverse(el.childNodes [i]);
}
}


I want to convert every numbers on html content to Persian numbers without effect on page element.

for example:

<div style='color: #c2c2c2'>
  text number 1
  <span>text number 2</span>
  <div>
    text number 3
    <b>text number 4</b>
    <a href='#page2'>text number 5</a>
   </div>
</div>

convert to :

  <div style='color: #c2c2c2'>
  text number ۱
  <span>text number ۲</span>
  <div>
    text number ۳
    <b>text number ۴</b>
    <a href='#page2'>text number ۵</a>
   </div>
</div>

persian = array('۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹');
english = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9');

Thanks.

解决方案

You can use this method: (http://jsfiddle.net/A4NfG/1/)

persian={0:'۰',1:'۱',2:'۲',3:'۳',4:'۴',5:'۵',6:'۶',7:'۷',8:'۸',9:'۹'};
function traverse(el){
    if(el.nodeType==3){
        var list=el.data.match(/[0-9]/g);
        if(list!=null && list.length!=0){
            for(var i=0;i<list.length;i++)
                el.data=el.data.replace(list[i],persian[list[i]]);
        }
    }
    for(var i=0;i<el.childNodes.length;i++){
        traverse(el.childNodes[i]);
    }
}

这篇关于如何将身体中的数字替换为波斯数字?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆