1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- /**
- * Created by Tony on 2017/6/21.
- */
- /**
- * Created by Tony on 2017/6/21.
- */
- var test = require('tape');
- test('string test1', function(t){
- let str = "at('1.1') + at('1.2') + at('1.3') + at('1.4')";
- //let re = /at(/g;
- //let re = new RegExp("at\(", "g");
- //let str1 = str.replaceAll('re', '@(');
- //let str1 = str.replace('at(', '@(');
- var str1 = str.split('at1(').join('@(');
- //t.equal(str1, "@('1.1') + @('1.2') + @('1.3') + @('1.4')");
- t.equal(str1, "at('1.1') + at('1.2') + at('1.3') + at('1.4')");
- t.end();
- })
- test('string test2', function(t){
- var str="hello(world)";
- var nstr = str.replace(/\([^\)]*\)/g,"");
- t.equal(nstr , "hello");
- t.end();
- })
- test('string test3', function(t){
- var str="共 (%S) 页";
- var nstr = str.replace("(%S)",10);
- t.equal(nstr , "共 10 页");
- t.end();
- })
- test('test extract', function(t){
- let private_extract_code = function(str, idx){
- let rst = '', lBracket = 0, rBracket = 0, firstIdx = idx, lastIdx = 0;
- for (let i = idx; i < str.length; i++) {
- if (str[i] === '(') {
- lBracket++;
- if (lBracket == 1) firstIdx = i + 1;
- }
- if (str[i] === ')') {
- rBracket++;
- if (lBracket == rBracket) {
- lastIdx = i - 1;
- if (lastIdx > firstIdx) {
- if (str[firstIdx] === "'") firstIdx++;
- if (str[lastIdx] !== "'") lastIdx++;
- if (lastIdx > firstIdx) {
- rst = str.slice(firstIdx, lastIdx);
- }
- }
- break;
- }
- }
- }
- return rst;
- };
- let code = private_extract_code("at('1.1') + at('1.2')", 10);
- t.equal(code , "1.2");
- t.end();
- })
|