31 lines
1.2 KiB
JavaScript
31 lines
1.2 KiB
JavaScript
const assert = require('node:assert')
|
|
|
|
const name = '/docmirror/dev-sidecar/raw/master/doc/index.png'
|
|
// https://raw.fastgit.org/docmirror/dev-sidecar/master/doc/index.png
|
|
const ret = name.replace(/^(.+)\/raw\/(.+)$/, 'raw.fastgit.org$1/$2')
|
|
console.log(ret)
|
|
assert.strictEqual(ret, 'raw.fastgit.org/docmirror/dev-sidecar/master/doc/index.png')
|
|
|
|
const reg = /^\/[^/]+\/[^/]+$/
|
|
console.log('/greper/d2-crud-plus/blob/master/.eslintignore'.match(reg))
|
|
assert.strictEqual('/greper/d2-crud-plus/blob/master/.eslintignore'.match(reg), null)
|
|
|
|
const chunk = Buffer.from('<head></head>')
|
|
const script = '<script>a</script>'
|
|
const index = chunk.indexOf('</head>')
|
|
const scriptBuf = Buffer.from(script)
|
|
const chunkNew = Buffer.alloc(chunk.length + scriptBuf.length)
|
|
chunk.copy(chunkNew, 0, 0, index)
|
|
scriptBuf.copy(chunkNew, index, 0)
|
|
chunk.copy(chunkNew, index + scriptBuf.length, index)
|
|
console.log(chunkNew.toString())
|
|
assert.strictEqual(chunkNew.toString(), '<head><script>a</script></head>')
|
|
|
|
const reg2 = /aaaa/i
|
|
console.log(reg2.test('aaaa')) // true
|
|
assert.strictEqual(reg2.test('aaaa'), true)
|
|
|
|
const reg3 = '/aaaa/i'
|
|
console.log(new RegExp(reg3).test('aaaa')) // false
|
|
assert.strictEqual(new RegExp(reg3).test('aaaa'), false)
|