吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1618|回复: 26
收起左侧

[已解决] 求助TXT里这样的内容怎么把它分隔开来?

 关闭 [复制链接]
zoenbo 发表于 2020-10-25 11:51
本帖最后由 zoenbo 于 2020-10-25 19:28 编辑

这是开放词典里的词典文档,里边正文全都是放在一起,用“,”分隔开来的,如何能让它区分开来,比如“吖”为词汇,“ä”是拼音,“啊”是解释;格式为粵語詞彙、粤语拼音、国语解释;但是有的内容是只有词汇和拼音没解释,比如“吖啶”、“鸦雀无声”这种就没有解释,有什么方法让它分隔开来呢?

[粵語詞彙]        [粵語拼音]        [國語解釋]

["吖", "ä", "啊", "吖啶", "ä", "dènk", "鴉雀無聲", "ä", "jeôg", "mow", "sënk", "吖嗎", "ä", "má", "嗎,吧", "吖嘛", "ä", "má", "嘛,呀", "吖嗱", "ä", "na", "吧", "鴉片", "ä", "pîn", "鴉片戰爭", "ä", "pîn", "jîn", "jänk", "鴉片貿易", "ä", "pîn", "màw", "yèk", "丫頭", "ä", "taw", "丫鬟", "ä", "wan", "啞巴", "ã", "bä", "啞鈴", "ã", "lenk", "亞", "a", "阿", "呀", "a", "啊", "亞爸", "a", "ba", "爸爸", "亞伯", "a", "bag", "伯伯,伯父", "亞跛", "a", "bäy", "瘸子,跛子", "亞保亞勝", "a", "bõw", "a", "sênk", "張三李四", "亞叉", "a", "cä", "印度人,印度男人", "亞燦", "a", "can", "從內地來香港的新移民", "亞大", "a", "dài", "老大", "阿斗", "a", "dãw", "亞斗官", "a", "dãw", "gün", "闊少爺,敗家子", "阿飛", "a", "fëy", "亞福", "a", "fök", "傻頭傻腦的人", "亞甲亞乙", "a", "gab", "a", "yeùd", "張三李四", "亞遒?", "a", "gãmp", "côi", "亞狗亞貓", "a", "gãw", "a", "mäu", "張三李四", "亞哥", "a", "gö", "哥,哥哥,大哥", "亞姑", "a", "gü", "姑姑,姑母", "亞公", "a", "gönk", "外祖父,老大爺", "亞軍", "a", "guänt", "阿訇", "a", "guänk", "亞仔", "a", "jãy", "兒子", "亞吱亞咗", "a", "jï", "a", "jõ", "推三阻四,不滿,妨礙", "亞豬亞狗", "a", "jeü", "a", "gãw", "張三李四", "亞媽", "a", "mä", "媽媽,母親", "亞嫲", "a", "ma", "祖母,奶奶", "亞乜人", "a", "mät", "yant", "誰誰,某某", "亞茂", "a", "màw", "傻子,傻瓜", "亞茂整餅", "a", "màw", "jẽnk", "bẽng", "沒事找事", "亞茂整餅,冇嗰樣整嗰樣", "a", "màw", "jẽnk", "bẽng", "mów", "gõ", "yeõng", "jẽnk", "gõ", "yeõng", "沒事找事,亂搞一氣"]

http://kaifangcidian.com/xiazai/cidian_zhyue-kfcd.zip 这是完整文档

微信截图_20201025114216.png

免费评分

参与人数 1吾爱币 +1 收起 理由
xouou + 1 这个excel就可以

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

badyun 发表于 2020-10-25 15:13
给你都处理成excel了,如下图



文件打包下载地址如下,不过有一点要讲清楚,你有的词语是没有国语释义的,导致有的数组里面缺失从而错乱了,这个是你源文件的问题

https://vip.d0.badyun.com/static/excel.zip


我处理的代码如下

[JavaScript] 纯文本查看 复制代码
const fs = require('fs')
const json2xls = require('json2xls');

let all = fs.readdirSync('./text');

for (let index in all) {
    let s = fs.readFileSync('./text/' + all[index]).toString()
    let name = s.split('\n')[7].replace(/\[|]/g, '').split('\t')
    let content = []
    if (s.indexOf('"吖"') != -1) {
        // 数组形式
        let p = JSON.parse('["吖"' + (s.split('["吖"')[1]))
        for (let i = 0; i < p.length; i += 3) {
            content.push(p.slice(i, i + 3));
        }
    } else {
        // csv形式
        let p = s.split('\n')
        for (let index in p) {
            if (index >= 9) {
                content.push(p[index].split('\t'))
            }
        }
    }
    const jsonArray = [];
    content.forEach(item => {
        let r = {}
        r[name[0]] = item[0]
        r[name[1]] = item[1]
        r[name[2]] = item[2]
        jsonArray.push(r);
    });

    let xls = json2xls(jsonArray);
    fs.writeFileSync('./excel/' + name[0] + '-' + name[1] + '-' + name[2] + parseInt(Math.random() * 1000) + '.xlsx', xls, 'binary');
}




rsnodame 发表于 2020-10-25 23:22
[Python] 纯文本查看 复制代码
import re
ptn = r'^[\x00-\x7f]+$'
ptn2 = r'^[^\x00-\x7f]+$'

cantonese = []
mandarin = []
pinyin = []
n = 0

while n < len(a):
	cantonese.append(a[n])
	py = []
	m = n + 1
	for i in range(len(a[n])):
		if re.search(ptn2,a[m]) == None:
			py.append(a[m])
			m += 1
		else:
			break
	pinyin.append(py)
	if m + 1 == len(a) or re.search(ptn2,a[m+1]) != None:
		mandarin.append(a[m])
		n = m + 1
	else:
		mandarin.append("")
		n = m


简单写了个逻辑,根据你给的sample是跑通了

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
zoenbo + 1 + 1 谢谢@Thanks!

查看全部评分

逝言 发表于 2020-10-25 12:07
eydin 发表于 2020-10-25 12:08
导入excel时可以分开
xlsheheda 发表于 2020-10-25 12:12
用EXECEL,数据-自文本-分隔规则选文档里的标点符号和空格。
 楼主| zoenbo 发表于 2020-10-25 12:14
xlsheheda 发表于 2020-10-25 12:12
用EXECEL,数据-自文本-分隔规则选文档里的标点符号和空格。

试过了 是能分隔 但是分不成对应的
daxuezuoye116 发表于 2020-10-25 12:21
先用EXCEL分列,把所有的分成单元格,然后用if函数来判断是否出现连续两个单元格为汉字,是的话从中间分开换行,如果不是,那就再汉字前插入换行,最后复制到word来体现换行符,最后word倒回到excel。
fanvalen 发表于 2020-10-25 12:25
用Python代码来处理最方便,但是要会写代码。
可以list切片
可以正则

skyamg 发表于 2020-10-25 12:27
找不到分割规则,没法分割
ofo 发表于 2020-10-25 12:36
这个是JSON格式,用JSON解析就行了,分割肯定有规则的,仔细分析就知道是什么规则了
 楼主| zoenbo 发表于 2020-10-25 12:48
ofo 发表于 2020-10-25 12:36
这个是JSON格式,用JSON解析就行了,分割肯定有规则的,仔细分析就知道是什么规则了

看到JSON就害怕,感觉这规则很难琢磨
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-30 16:59

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表