Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
brandkbs2
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
shenjunjie
brandkbs2
Commits
896274b1
Commit
896274b1
authored
Jan 05, 2023
by
shenjunjie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
词云图由hanLp调整为ansj
parent
555bf8de
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
1781 additions
and
5 deletions
+1781
-5
pom.xml
+6
-0
src/main/java/com/zhiwei/brandkbs2/ansjSeg/AnsjSeg.java
+318
-0
src/main/java/com/zhiwei/brandkbs2/ansjSeg/MyDic.java
+179
-0
src/main/java/com/zhiwei/brandkbs2/service/impl/ChannelServiceImpl.java
+9
-1
src/main/java/com/zhiwei/brandkbs2/util/TextUtil.java
+6
-3
src/main/java/com/zhiwei/brandkbs2/util/Tools.java
+3
-1
src/main/resources/ansjWordDic/customDic.txt
+3
-0
src/main/resources/ansjWordDic/negativeDic.txt
+0
-0
src/main/resources/ansjWordDic/positiveDic.txt
+0
-0
src/main/resources/ansjWordDic/sensitiveDic.txt
+0
-0
src/main/resources/ansjWordDic/stopWordsDic.txt
+1257
-0
No files found.
pom.xml
View file @
896274b1
...
...
@@ -244,6 +244,12 @@
<artifactId>
event-client
</artifactId>
<version>
${event-client.version}
</version>
</dependency>
<!-- 分词jar -->
<dependency>
<groupId>
org.ansj
</groupId>
<artifactId>
ansj_seg
</artifactId>
<version>
5.0.2
</version>
</dependency>
</dependencies>
<build>
<plugins>
...
...
src/main/java/com/zhiwei/brandkbs2/ansjSeg/AnsjSeg.java
0 → 100644
View file @
896274b1
package
com
.
zhiwei
.
brandkbs2
.
ansjSeg
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
com.zhiwei.tools.order.TreatOrder
;
import
org.ansj.dic.LearnTool
;
import
org.ansj.domain.Result
;
import
org.ansj.domain.Term
;
import
org.ansj.library.UserDefineLibrary
;
import
org.ansj.recognition.impl.NatureRecognition
;
import
org.ansj.splitWord.analysis.NlpAnalysis
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map.Entry
;
public
class
AnsjSeg
{
private
static
Logger
logger
=
LogManager
.
getLogger
(
AnsjSeg
.
class
);
private
List
<
String
>
stopWords
=
MyDic
.
getStopWords
();
// 停用词集合
private
List
<
String
>
posivtiveWords
=
MyDic
.
getPosivtiveWords
();
// 正面词集合
private
List
<
String
>
negativeWords
=
MyDic
.
getNegativeWords
();
// 负面词集合
private
List
<
String
>
customWords
=
MyDic
.
getCustomWords
();
// 自定义词集合
public
void
addAnsjSeg
(
List
<
String
>
newStopWords
,
List
<
String
>
newCustomWords
)
{
if
(
newStopWords
!=
null
)
{
this
.
stopWords
.
addAll
(
newStopWords
);
}
if
(
newCustomWords
!=
null
)
{
this
.
customWords
.
addAll
(
newCustomWords
);
}
}
/**
* @Title: getFenCi
* @Description: TODO(针对集合分词统计,并输出正负面词汇)
* @param dataList
* 设定文件
* @return HashMap<String,Object> 返回类型
*/
public
Map
<
String
,
Object
>
getFenCi
(
List
<
String
>
dataList
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
// 分词总结果
Map
<
String
,
Integer
>
hash
=
new
HashMap
<
String
,
Integer
>();
// 初步分词结果
// 统计分词
for
(
String
txt
:
dataList
)
{
List
<
Term
>
termList
=
getFenci
(
txt
);
if
(
termList
!=
null
)
{
for
(
Term
term
:
termList
)
{
String
words
=
term
.
getName
();
// 去除停用词和单词
if
(
words
.
length
()
>
1
)
{
if
(
hash
.
containsKey
(
words
))
{
hash
.
put
(
words
,
hash
.
get
(
words
)
+
1
);
}
else
{
hash
.
put
(
words
,
1
);
}
}
}
}
}
// 统计正负面关键词
List
<
Map
<
String
,
Object
>>
goodResultList
=
new
ArrayList
<
Map
<
String
,
Object
>>();
// 正面关键词
List
<
Map
<
String
,
Object
>>
badResultList
=
new
ArrayList
<
Map
<
String
,
Object
>>();
// 负面关键词
// 对分词结果排序
List
<
Entry
<
String
,
Integer
>>
resultList
=
TreatOrder
.
treatOrderByCountDesc
(
hash
);
try
{
// 统计正负面关键词
for
(
Entry
<
String
,
Integer
>
entry
:
resultList
)
{
String
word
=
entry
.
getKey
();
if
(
posivtiveWords
.
contains
(
word
))
{
HashMap
<
String
,
Object
>
goodmap
=
new
HashMap
<
String
,
Object
>();
goodmap
.
put
(
"key"
,
entry
.
getKey
());
goodmap
.
put
(
"value"
,
entry
.
getValue
());
goodResultList
.
add
(
goodmap
);
}
else
if
(
negativeWords
.
contains
(
word
))
{
HashMap
<
String
,
Object
>
badmap
=
new
HashMap
<
String
,
Object
>();
badmap
.
put
(
"key"
,
entry
.
getKey
());
badmap
.
put
(
"value"
,
entry
.
getValue
());
badResultList
.
add
(
badmap
);
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
// 输出正负面关键词
if
(
goodResultList
.
size
()
>=
10
)
{
goodResultList
=
goodResultList
.
subList
(
0
,
10
);
}
if
(
badResultList
.
size
()
>=
10
)
{
badResultList
=
badResultList
.
subList
(
0
,
10
);
}
if
(
resultList
.
size
()
>=
20
)
{
resultList
=
resultList
.
subList
(
0
,
20
);
}
// 将总结果放入词云中
map
.
put
(
"goodWord"
,
goodResultList
);
map
.
put
(
"badWord"
,
badResultList
);
map
.
put
(
"word"
,
resultList
);
return
map
;
}
/**
*
* @TODO (统计分词结果,按频次取前maxNum)
* @author 陈炜涛
* @param dataList
* @param maxNum
* @return
* @time 2016年11月16日上午11:06:10
* @return Map<String,Object>
*/
public
List
<
Entry
<
String
,
Integer
>>
getFenCi
(
List
<
String
>
dataList
,
int
maxNum
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
// 分词总结果
Map
<
String
,
Integer
>
hash
=
new
HashMap
<>();
// 初步分词结果
// 统计分词
for
(
String
txt
:
dataList
)
{
List
<
Term
>
termList
=
getFenci
(
txt
);
if
(
termList
!=
null
)
{
for
(
Term
term
:
termList
)
{
String
words
=
Tools
.
filterSpecialCharacter
(
term
.
getName
());
String
wordsPro
=
term
.
getNatureStr
();
// 去除停用词和单词
if
(
words
.
length
()
>
1
)
{
switch
(
wordsPro
)
{
case
"w"
:
break
;
case
"r"
:
break
;
case
"p"
:
break
;
default
:
if
(
hash
.
containsKey
(
words
))
{
hash
.
put
(
words
,
hash
.
get
(
words
)
+
1
);
}
else
{
hash
.
put
(
words
,
1
);
}
break
;
}
}
}
}
}
Map
<
String
,
Integer
>
stopResults
=
new
HashMap
<>();
for
(
Entry
<
String
,
Integer
>
en
:
hash
.
entrySet
())
{
if
(!
stopWords
.
contains
(
en
.
getKey
()))
{
stopResults
.
put
(
en
.
getKey
(),
en
.
getValue
());
}
}
// 对分词结果排序
List
<
Entry
<
String
,
Integer
>>
resultList
=
treatOrderByCountDesc
(
stopResults
);
if
(
resultList
.
size
()
>=
maxNum
)
{
resultList
=
resultList
.
subList
(
0
,
maxNum
);
}
return
resultList
;
}
/**
* @Title: getFenCi
* @Description: TODO(针对真文本分词并统计)
* @param name
* 设定文件
* @return HashMap<String,Integer> 返回类型
*/
public
HashMap
<
String
,
Integer
>
getFenCi
(
String
name
)
{
HashMap
<
String
,
Integer
>
hash
=
new
HashMap
<
String
,
Integer
>();
// 初步分词结果
List
<
Term
>
termList
=
getFenci
(
name
);
if
(
termList
!=
null
)
{
for
(
Term
term
:
termList
)
{
String
word
=
term
.
getName
();
if
(
hash
.
containsKey
(
word
))
{
hash
.
put
(
word
,
hash
.
get
(
word
)
+
1
);
}
else
{
hash
.
put
(
word
,
1
);
}
}
}
return
hash
;
}
/**
* @Title: removeStopWord
* @Description: TODO(分词)
* @ 设定文件
* @return void 返回类型
*/
public
List
<
Term
>
getFenci
(
String
text
)
{
try
{
// 去重停用词(看源码应该是删除分词关键词)
// for (String word : stopWords)
// {
// UserDefineLibrary.removeWord(word);
// }
// 添加自定义词
for
(
String
word
:
customWords
)
{
UserDefineLibrary
.
insertWord
(
word
);
}
// 分词
LearnTool
learnTool
=
new
LearnTool
();
NlpAnalysis
nlp
=
new
NlpAnalysis
().
setLearnTool
(
learnTool
);
//
Result
result
=
nlp
.
parseStr
(
text
);
new
NatureRecognition
().
recognition
(
result
);
return
result
.
getTerms
();
}
catch
(
Exception
e
)
{
logger
.
error
(
"分词出现问题"
);
return
null
;
}
}
/**
*
* @Title: treatOrderByCountDesc
* @Description: TODO(根据数量降序)
* @param dataMap
* 设定文件
* @return List<Entry<String,Integer>> 返回类型
*/
public
static
List
<
Entry
<
String
,
Integer
>>
treatOrderByCountDesc
(
Map
<
String
,
Integer
>
dataMap
)
{
List
<
Entry
<
String
,
Integer
>>
list
=
new
ArrayList
<>(
dataMap
.
entrySet
());
list
.
sort
((
o1
,
o2
)
->
getCompareResult
(
o1
.
getValue
(),
o2
.
getValue
(),
false
));
return
list
;
}
/**
* @Title: getCompareResult
* @Description: TODO(排序比较)
* @param time1
* @param time2
* @param asc
* 设定文件
* @return int 返回类型
*/
private
static
int
getCompareResult
(
long
time1
,
long
time2
,
boolean
asc
)
{
long
result
;
if
(
asc
)
{
result
=
time1
-
time2
;
}
else
{
result
=
time2
-
time1
;
}
if
(
result
>
0
)
{
result
=
1
;
}
else
if
(
result
<
0
)
{
result
=
-
1
;
}
return
(
int
)
result
;
}
}
\ No newline at end of file
src/main/java/com/zhiwei/brandkbs2/ansjSeg/MyDic.java
0 → 100644
View file @
896274b1
package
com
.
zhiwei
.
brandkbs2
.
ansjSeg
;
import
com.zhiwei.brandkbs2.util.Tools
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.core.io.Resource
;
import
org.springframework.stereotype.Component
;
import
javax.annotation.PostConstruct
;
import
java.io.*
;
import
java.nio.charset.StandardCharsets
;
import
java.util.List
;
/**
* @author 落花流水
* @Description: 用于自定义词库
* @ClassName: MyDic
* @date 2016年3月28日 上午11:36:01
*/
@Component
public
class
MyDic
{
public
final
static
Logger
log
=
LogManager
.
getLogger
(
MyDic
.
class
);
@Value
(
"classpath:ansjWordDic/customDic.txt"
)
private
Resource
customDic
;
@Value
(
"classpath:ansjWordDic/stopWordsDic.txt"
)
private
Resource
stopDic
;
@Value
(
"classpath:ansjWordDic/negativeDic.txt"
)
private
Resource
negativeDic
;
@Value
(
"classpath:ansjWordDic/positiveDic.txt"
)
private
Resource
positiveDic
;
private
static
List
<
String
>
customWords
;
private
static
List
<
String
>
stopWords
;
private
static
List
<
String
>
negativeWords
;
private
static
List
<
String
>
positiveWords
;
@PostConstruct
public
void
init
()
{
try
{
// 读取词典
List
<
String
>
customDics
=
Tools
.
readListFile
(
customDic
.
getInputStream
());
List
<
String
>
stopDics
=
Tools
.
readListFile
(
stopDic
.
getInputStream
());
InputStream
inputStream
=
negativeDic
.
getInputStream
();
List
<
String
>
negativeDic
=
Tools
.
readListFile
(
inputStream
);
InputStream
inputStream2
=
positiveDic
.
getInputStream
();
List
<
String
>
positiveDic
=
Tools
.
readListFile
(
inputStream2
);
log
.
info
(
"ansj自定义词典加载:{}条,停用词加载:{}条,负面词典加载:{}条,正面词典加载:{}条"
,
customDics
.
size
(),
stopDics
.
size
(),
negativeDic
.
size
(),
positiveDic
.
size
());
}
catch
(
Exception
e
)
{
log
.
info
(
"MyDic-init 异常"
,
e
);
}
}
/**
* @return List<String> 返回类型
* @Title: getCustomWords
* @Description: TODO(获取用户自定义词)
* 设定文件
*/
public
static
List
<
String
>
getCustomWords
()
{
return
customWords
;
}
/**
* @return List<String> 返回类型
* @Title: getCustomWords
* @Description: TODO(获取负面词)
* 设定文件
*/
public
static
List
<
String
>
getNegativeWords
()
{
return
negativeWords
;
}
/**
* @return List<String> 返回类型
* @Title: getCustomWords
* @Description: TODO(获取正面词)
* 设定文件
*/
public
static
List
<
String
>
getPosivtiveWords
()
{
return
negativeWords
;
}
/**
* @return List<String> 返回类型
* @Title: getCustomWords
* @Description: TODO(获取停用词)
* 设定文件
*/
public
static
List
<
String
>
getStopWords
()
{
return
stopWords
;
}
/**
* @param words 设定文件
* @return boolean 返回类型
* @Title: addCustomWords
* @Description: TODO(向词库中添加自定义词)
*/
public
static
boolean
addCustomWords
(
List
<
String
>
words
)
{
return
addWords
(
customWords
,
words
);
}
/**
* @param words 设定文件
* @return boolean 返回类型
* @Title: addCustomWords
* @Description: TODO(向词库中添加负面词)
*/
public
static
boolean
addNegativeWords
(
List
<
String
>
words
)
{
return
addWords
(
negativeWords
,
words
);
}
/**
* @param words 设定文件
* @return boolean 返回类型
* @Title: addCustomWords
* @Description: TODO(向词库中添加正面词)
*/
public
static
boolean
addPositiveWords
(
List
<
String
>
words
)
{
return
addWords
(
positiveWords
,
words
);
}
/**
* @param words 设定文件
* @return boolean 返回类型
* @Title: addCustomWords
* @Description: TODO(向词库中添加停用词)
*/
public
static
boolean
addStopWords
(
List
<
String
>
words
)
{
return
addWords
(
stopWords
,
words
);
}
private
static
boolean
addWords
(
List
<
String
>
targetList
,
List
<
String
>
addList
)
{
if
(
null
==
addList
)
{
return
false
;
}
for
(
String
word
:
addList
)
{
if
(!
targetList
.
contains
(
word
))
{
targetList
.
add
(
word
);
}
}
return
true
;
}
/**
* @param file
* @param newWordList
* @param @throws IOException 设定文件
* @return BufferedWriter 返回类型
* @Title: writerWords
* @Description: 把新的关键词存入文件
*/
private
static
boolean
writerWords
(
File
file
,
List
<
String
>
newWordList
)
{
boolean
flag
=
false
;
BufferedWriter
writer
=
null
;
try
{
writer
=
new
BufferedWriter
(
new
OutputStreamWriter
(
new
FileOutputStream
(
file
,
true
),
StandardCharsets
.
UTF_8
));
for
(
String
word
:
newWordList
)
{
writer
.
newLine
();
writer
.
write
(
word
);
}
flag
=
true
;
}
catch
(
Exception
e
)
{
log
.
error
(
"写入数据出错:{}"
,
e
.
getMessage
());
}
finally
{
try
{
if
(
null
!=
writer
)
{
writer
.
close
();
}
}
catch
(
IOException
e
)
{
log
.
error
(
"关闭输出流出错:{}"
,
e
.
getMessage
());
}
}
return
flag
;
}
}
src/main/java/com/zhiwei/brandkbs2/service/impl/ChannelServiceImpl.java
View file @
896274b1
...
...
@@ -979,7 +979,15 @@ public class ChannelServiceImpl implements ChannelService {
BoolQueryBuilder
postFilter
=
getChannelListQuery
(
projectId
,
contendId
,
keyword
,
platforms
,
emotions
,
mediaTypes
,
articlesCount
);
searchHelper
.
setPostFilter
(
postFilter
);
searchHelper
.
setSort
(
SortBuilders
.
fieldSort
(
"influence"
).
order
(
SortOrder
.
DESC
));
if
(
null
!=
sorter
)
{
for
(
Map
.
Entry
<
String
,
Object
>
entry
:
JSONObject
.
parseObject
(
sorter
).
entrySet
())
{
if
(
entry
.
getValue
().
toString
().
contains
(
"desc"
))
{
searchHelper
.
setSort
(
SortBuilders
.
fieldSort
(
entry
.
getKey
()).
order
(
SortOrder
.
DESC
));
}
else
{
searchHelper
.
setSort
(
SortBuilders
.
fieldSort
(
entry
.
getKey
()).
order
(
SortOrder
.
ASC
));
}
}
}
searchHelper
.
setFrom
((
page
-
1
)
*
pageSize
);
searchHelper
.
setSize
(
pageSize
);
searchHelper
.
setIndexes
(
new
String
[]
{
ChannelEsDao
.
CHANNEL_COPY_ES_INDEX_NAME
});
...
...
src/main/java/com/zhiwei/brandkbs2/util/TextUtil.java
View file @
896274b1
...
...
@@ -7,6 +7,7 @@ import com.hankcs.hanlp.HanLP;
import
com.hankcs.hanlp.dictionary.CustomDictionary
;
import
com.hankcs.hanlp.dictionary.stopword.CoreStopWordDictionary
;
import
com.hankcs.hanlp.seg.common.Term
;
import
com.zhiwei.brandkbs2.ansjSeg.AnsjSeg
;
import
com.zhiwei.brandkbs2.common.GenericAttribute
;
import
com.zhiwei.nlp.AggreeBootStarter
;
import
com.zhiwei.nlp.common.AggreeConfig
;
...
...
@@ -38,6 +39,7 @@ public class TextUtil {
private
Resource
customDic
;
@Value
(
"classpath:wordDic/stopWordDictionary.txt"
)
private
Resource
stopDic
;
private
static
AnsjSeg
ansjSeg
;
@PostConstruct
public
void
init
()
{
...
...
@@ -104,9 +106,10 @@ public class TextUtil {
}
public
static
List
<
JSONObject
>
getHighWordsJson
(
List
<
String
>
texts
,
Integer
maxSize
)
{
Map
<
String
,
Integer
>
highWords
=
getHighWords
(
texts
,
maxSize
);
List
<
JSONObject
>
result
=
new
ArrayList
<>(
highWords
.
size
());
for
(
Map
.
Entry
<
String
,
Integer
>
entry
:
highWords
.
entrySet
())
{
// Map<String, Integer> highWords = getHighWords(texts, maxSize);
List
<
Map
.
Entry
<
String
,
Integer
>>
wordRate
=
ansjSeg
.
getFenCi
(
texts
,
maxSize
);
List
<
JSONObject
>
result
=
new
ArrayList
<>(
wordRate
.
size
());
for
(
Map
.
Entry
<
String
,
Integer
>
entry
:
wordRate
)
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"name"
,
entry
.
getKey
());
jsonObject
.
put
(
"num"
,
entry
.
getValue
());
...
...
src/main/java/com/zhiwei/brandkbs2/util/Tools.java
View file @
896274b1
...
...
@@ -536,10 +536,12 @@ public class Tools {
//根据文件路径创建缓冲输入流
br
=
new
BufferedReader
(
new
InputStreamReader
(
inputStream
));
//循环读取文件的每一行,对需要修改的行进行修改,放入缓冲对象中
while
(
StringUtils
.
isNotEmpty
(
line
=
StringUtils
.
trim
(
br
.
readLine
())))
{
while
(
null
!=
(
line
=
StringUtils
.
trim
(
br
.
readLine
())))
{
// 去除多余空格
if
(
StringUtils
.
isNotEmpty
(
line
))
{
result
.
add
(
line
);
}
}
}
catch
(
Exception
e
)
{
throw
new
Exception
(
e
);
}
finally
{
...
...
src/main/resources/ansjWordDic/customDic.txt
0 → 100644
View file @
896274b1
蓝瘦香菇
\ No newline at end of file
src/main/resources/ansjWordDic/negativeDic.txt
0 → 100644
View file @
896274b1
src/main/resources/ansjWordDic/positiveDic.txt
0 → 100644
View file @
896274b1
src/main/resources/ansjWordDic/sensitiveDic.txt
0 → 100644
View file @
896274b1
This diff is collapsed.
Click to expand it.
src/main/resources/ansjWordDic/stopWordsDic.txt
0 → 100644
View file @
896274b1
【
昨天
明天
今天
微博
转发
现在
嘿嘿
还要
要
嗳
赶早不赶晚
这些
日益
倒不如
逢
立地
不只
一般
豁然
将近
毫不
嗬
大张旗鼓
嗯
不可开交
"
#
!
&
全力
就算
'
$
%
...
*
+
(
她们
)
.
/
各位
,
-
︿
3
2
1
不止
基本
0
不拘
7
这里
6
5
颇
4
;
:
如此
9
8
极度
?
>
首先
=
<
也罢
@
A
见
当庭
隔夜
更
不少
不胜
\
_
替
^
到目前为止
大大
除开
腾
暗中
而外
开始
`
三番两次
宁可
这么
权时
结果
大多
除此以外
单单
如下
几度
何处
喂
如上
矣
喀
喏
~
吧哒
|
放量
即便
当年
不对
那
顷刻
本人
是
岂非
己
看
趁热
哪边
立马
乘势
啥
何况
这个
啦
人民
率尔
那种
仍然
不能
根据
并肩
相对而言
也好
啐
什么样
累年
啊
扑通
即使
开外
大概
依照
·
乃至
与否
总而言之
高低
切切
多次
比如说
不亦乐乎
如期
简言之
何妨
不管怎样
顺
顷
将才
呆呆地
略为
更为
大约
其次
倍加
满
不定
除了
都
之后
着
难道
不可
至
风雨无阻
陡然
为了
及至
对于
虽说
唉
彻夜
嘎嘎
臭
不同
大体上
自
!
#
来得及
哦
而
%
$
的
&
哪
)
老
(
+
哩
*
,
者
人人
比方
0
1
简而言之
这么些
2
3
4
5
6
不至于
7
这部
谁知
8
几时
9
屡
:
;
<
应当
>
哼
?
人家
如今
@
哇
哈
哉
尽量
总的说来
继之
单纯
方才
哎
这么点儿
极
乘胜
八成
光是
倘或
哗
被
忽然
[
从头
出去
哟
]
咦
切不可
尽
哪年
竟然
是否
而况
加以
从此以后
省得
就
咳
我们
不力
各个
咱
充其极
|
}
次第
~
岂止
{
某
尽管如此
偶而
看上去
截然
甚而
和
如常
任何
极端
接着
嘎登
咋
皆可
具体地说
凝神
这就是说
将
千万
好在
从早到晚
各自
咚
取道
纯粹
这种
只限
上去
恐怕
呢
莫非
虽然
碰巧
呸
紧接着
即若
本
等等
按照
呵
不单
具体说来
一旦
望
朝
纵
不要
呀
怎样
呃
轰然
有
每当
接连不断
呜
呐
不比
呕
纯
呗
各种
理应
连袂
吧
绝
什么
那里
后来
给
日渐
暗自
以免
经
不然
来
饱
别人
吱
看来
沙沙
同
趁势
切莫
从重
尽心尽力
切勿
果真
各
¥
要不是
白
并排
自己
保管
岂
差一点
默然
此中
能
吗
向
吓
藉以
不惟
的确
此后
让
待到
末##末
哪些
不然的话
其他
毫无
连声
趁早
归
几经
当
论
九
也
挨门挨户
挨次
乘
保险
从小
莫若
乒
彼
乎
刚好
么
如若
之
默默地
是的
嗡嗡
请勿
乃
为
得起
借此
该
汝
从此
然而
亲眼
略微
刚才
一定
反倒是
按时
临
个
倘若
差不多
从无到有
—
起来
’
‘
反之则
弗
”
“
何止
惯常
姑且
与其
…
哪个
反而
常言道
大抵
不再
且
到了儿
三
上
再者
不
并且
与
一
趁着
七
两者
等到
不经意
必
如何
来着
不由得
怎么样
尽管
知道
任
旁人
不管
由
个人
哪里
似的
以
甭
甫
倒不如说
用
均
其余
长此下去
们
莫
匆匆
多少
当着
就是说
他
既然
虽则
纵使
呼哧
沿
快
仅
联袂
没
或许
仍
来看
俺们
从
倘然
只是
往
大凡
而言
当真
待
因此
很
不如
据此
更进一步
那么样
纵然
得
不仅...而且
极为
尽然
略
长期以来
互
五
不妨
不止一次
地
——
较比
必须
或是
向着
从古到今
在
尽如人意
了
毕竟
二
川流不息
确实
于
可以
你
并没有
当场
要不
那儿
纵令
恰巧
无宁
四
来讲
局外
近年来
因
并
但
起首
,
赶快
方
需要
即令
大略
将要
活
不特
然则
极了
何
但是
固
不独
何苦
一则
猛然
屡屡
传
到底
在下
设使
经过
至于
老老实实
猛然间
截至
譬如
很多
一切
别的
要么
趁机
。
、
越是
常
按期
何尝
》
《
〉
〈
动不动
不外
因为
使得
会
既
如果
按说
不大
带
自从
以便
宁肯
当下
不光
它们
之类
老大
尽可能
尔后
成年累月
如上所述
每个
彼此
从宽
俺
就此
粗
达旦
当口儿
归根结底
看起来
或多或少
当中
据我所知
据实
不免
遵照
固然
缕缕
换言之
策略地
居然
连日来
若
起见
比照
嘎
不成
不仅仅是
长话短说
因而
设若
不论
嘘
嘛
沿着
恍然
慢说
亲身
哼唷
故
便
以至
以致
本着
论说
除外
之所以
简直
前后
大家
嘻
果然
共总
嘿
敢
时候
不怎么
如次
依
鄙人
亲手
大
顿时
顺着
叮当
敞开儿
等
大面儿上
年复一年
冲
打开天窗说亮话
跟
上来
拿
假若
不曾
着呢
快要
此刻
而且
背靠背
假使
陈年
多多益善
另方面
冒
他人
到处
大体
下来
云云
全然
何须
为着
每逢
内
多
很少
尚且
只要
不仅仅
出
顷刻间
常常
趁
日臻
恰似
得天独厚
另外
敢情
率然
并无
届时
凭
每每
几
她
成为
他们
尔等
尽快
不消
如其
把
反之亦然
当即
奇
据悉
奈
前者
第
必定
[
处处
]
断然
绝非
总的来看
岂但
分期
古来
我们
啪达
顷刻之间
每次
别说
传闻
从优
总的来说
非徒
常言说得好
非得
由于
难说
可是
从今以后
比如
所
继而
不可抗拒
才
如
精光
凭借
略加
起
平素
绝对
赶
于是
打
一样
长线
每时每刻
不择手段
理该
共
拦腰
喔唷
其
仍旧
屡次
以及
当然
到头来
抑或
宁愿
一方面
举凡
只有
八
咱们
六
从新
兮
这样
不得已
管
十分
自个儿
呼啦
我
必将
串行
而论
或
牢牢
成心
光
哈哈
与此同时
其一
于是乎
此
看样子
换句话说
全身心
除非
有人
以至于
按理
也许
打从
照着
况且
独
除却
不了
不得
反手
成年
哎呀
关于
恰恰相反
这儿
累次
其中
动辄
立刻
倒是
毫无例外
从古至今
可见
诚然
莫不
怎么办
亲自
经常
决不
自各儿
这么样
不必
不得了
除去
由此可见
像
有些
挨个
不仅
进来
大事
全年
绝顶
社会主义
总之
当头
若是
竟
不外乎
要不然
如此等等
分期分批
那么
毋宁
立
其二
不会
..
背地里
据
此间
哪儿
不怕
不问
每
为什么
没有
公然
那会儿
迫于
来不及
不起
千万千万
可能
正如
比
还有
借
倘
究竟
及其
不限
偏偏
据称
故此
谁
伙同
敢于
弹指之间
那些
窃
朝着
叮咚
临到
即将
哎哟
而已
尽心竭力
到头
亲口
已经
不但
出来
随着
不得不
非常
另一个
非但
如前所述
殆
--
诸位
那时
即是说
按
谨
何时
此外
然后
勃然
从来
近几年来
近来
莫如
奋勇
比起
仅仅
故而
穷年累月
历
乌乎
怪不得
去
借以
主要
间或
方能
白白
除
反过来
全都
并没
过
除此之外
马上
迄
恰恰
传说
还
这
连
近
从速
上下
哪样
这边
从未
不能不
从不
及
那个
边
又
迟早
不知不觉
挨家挨户
多多少少
几番
有关
您
连同
较
互相
怎么
但愿
可
你们
凑巧
连日
叫
路经
阿
起先
另
二话没说
之一
这时
即或
连连
其后
各式
当儿
独自
它
宁
哪天
就是
乘机
常言说
不下
定
照
昂然
毫无保留地
趁便
屡次三番
甚至
那末
充其量
该当
另一方面
既...又
瑟瑟
的话
呜呼
或者
立时
反过来说
有的
挨着
再说
够瞧的
过于
零
就地
然
极其
何乐而不为
进去
单
随
起头
无论
怎
据说
综上所述
抽冷子
才能
怕
千
离
梆
极大
恰逢
半
大举
漫说
接下来
忽地
而是
即
难得
不但...而且
格外
怪
倘使
还是
从而
对
本身
乘隙
既是
理当
反倒
焉
可好
不满
交口
基本上
认为
这会儿
充分
并非
不迭
老是
倍感
鉴于
要是
反之
哪怕
除此而外
虽
一下
自身
任凭
几乎
顶多
靠
而又
不时
一个
否则
自家
三天两头
砰
啊呀
难怪
所以
发生
哗啦
多年来
罢了
大致
从轻
那边
那么些
不巧
完全
起初
某个
加之
大不了
归根到底
偶尔
应该
二话不说
日见
不是
大都
愤然
而后
多年前
例如
蛮
切
一些
多多
日复一日
较之
即刻
那样
齐
其它
则
不料
刚
初
决非
乘虚
恰如
能够
从严
故意
别
啊哟
从中
不已
加上
具体来说
较为
分头
直到
到
>>
隔日
多亏
假如
甚么
作为
暗地里
挨门逐户
恰好
其实
何必
万一
不过
某些
啊哈
基于
不日
尽早
刚巧
概
一来
同时
三番五次
为何
更加
绝不
除此
不常
进而
另行
急匆匆
通过
话说
若非
极力
存心
http
https
cn
com
呵呵
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment