cách đọc kèo bóng đá được sử dụng để loại bỏ các từ không nên xem xét trong tìm kiếm (Dừng từ) và đếnbình thườngCác từ sao cho các dạng dẫn xuất khác nhau của cùng cách đọc kèo bóng đá từ sẽ khớp. cách đọc kèo bóng đá từ được chuẩn hóa thành công được gọi làLexeme. Ngoài việc cải thiện chất lượng tìm kiếm, bình thường hóa và loại bỏ các từ dừng, giảm kích thước củaTSVECTOR
Đại diện của cách đọc kèo bóng đá tài liệu, do đó cải thiện hiệu suất. Bình thường hóa không phải lúc nào cũng có ý nghĩa ngôn ngữ và thường phụ thuộc vào ngữ nghĩa ứng dụng.
cách đọc kèo bóng đá số ví dụ về chuẩn hóa:
Ti ngôn ngữ - cách đọc kèo bóng đá ISPELL cố gắng giảm các từ đầu vào xuống dạng chuẩn hóa; cách đọc kèo bóng đá thân cây loại bỏ kết thúc từ
urlVị trí có thể được chính thức hóa để làm cho các URL tương đương phù hợp:
http: //www.pgsql.ru/db/mw/index.html
http: //www.pgsql.ru/db/mw/
http: //www.pgsql.ru/db/../db/mw/index.html
Tên màu có thể được thay thế bằng các giá trị thập lục phân của chúng, ví dụ:Đỏ, xanh lá cây, xanh dương, Magenta - FF0000, 00FF00, 0000FF, FF00FF
Nếu số lượng lập chỉ mục, chúng ta có thể xóa cách đọc kèo bóng đá số chữ số phân số để giảm phạm vi số có thể, vì vậy ví dụ3.14159265359,3.1415926,3.14sẽ giống nhau sau khi chuẩn hóa nếu chỉ có hai chữ số được giữ sau điểm thập phân.
cách đọc kèo bóng đá là một chương trình chấp nhận mã thông báo làm đầu vào và trả về:
Một mảng từ vựng nếu mã thông báo đầu vào được biết đến cách đọc kèo bóng đá (lưu ý rằng một mã thông báo có thể tạo ra nhiều hơn một từ vựng)
cách đọc kèo bóng đá từ vựng duy nhất vớiTSL_Filter
13336_13477Bộ lọc cách đọc kèo bóng đá)
Một mảng trống nếu cách đọc kèo bóng đá biết mã thông báo, nhưng đó là một từ dừng
null
Nếu cách đọc kèo bóng đá không nhận ra từ vựng | đầu vào
PostgreSQLcung cấp cách đọc kèo bóng đá được xác định trước cho nhiều ngôn ngữ. Ngoài ra còn có một số mẫu được xác định trước có thể được sử dụng để tạo cách đọc kèo bóng đá mới với các tham số tùy chỉnh.PREDT/
khu vực củaPostgreSQLPhân phối cho các ví dụ.
Cấu hình tìm kiếm văn bản liên kết một trình phân tích cú pháp cùng với một bộ cách đọc kèo bóng đá để xử lý mã thông báo đầu ra của trình phân tích cú pháp. Đối với mỗi loại mã thông báo mà trình phân tích cú pháp có thể trả về, một danh sách cách đọc kèo bóng đá riêng biệt được chỉ định bởi cấu hình.null
Đầu ra xác định kết quả và bất kỳ cách đọc kèo bóng đá còn lại nào không được tư vấn; Nhưng một cách đọc kèo bóng đá lọc có thể thay thế từ đã cho bằng một từ đã được sửa đổi, sau đó được truyền đến các cách đọc kèo bóng đá tiếp theo.
Quy tắc chung để định cấu hình danh sách cách đọc kèo bóng đá là đặt đầu tiên là cách đọc kèo bóng đá hẹp nhất, cụ thể nhất, sau đó là cách đọc kèo bóng đá chung hơn, kết thúc với một cách đọc kèo bóng đá rất chung, nhưSnowballStemmer hoặcđơn giản
, nhận ra mọi thứ. Ví dụ: cho cách đọc kèo bóng đá tìm kiếm dành riêng cho thiên văn học (Astro_en
Cấu hình) Người ta có thể liên kết loại từ vựng |asciiword
(ASCII Word) đến một cách đọc kèo bóng đá đồng nghĩa với thuật ngữ thiên văn, cách đọc kèo bóng đá tiếng Anh chung và ASnowballEnglish Stemmer:
Thay đổi cấu hình tìm kiếm văn bản astro_en
Một cách đọc kèo bóng đá lọc có thể được đặt ở bất cứ đâu trong danh sách, ngoại trừ ở cuối nơi nó sẽ vô dụng. Lọc cách đọc kèo bóng đá rất hữu ích để bình thường hóa một phần các từ để đơn giản hóa nhiệm vụ của các cách đọc kèo bóng đá sau này.UnaccentMô -đun.
Các từ dừng là những từ rất phổ biến, xuất hiện trong hầu hết mọi tài liệu và không có giá trị phân biệt đối xử. Do đó, chúng có thể bị bỏ qua trong bối cảnh tìm kiếm toàn văn.A
vàThe
, vì vậy việc lưu trữ chúng là vô ích. Tuy nhiên, các từ dừng lại ảnh hưởng đến các vị trí trongTSVECTOR
, lần lượt ảnh hưởng đến xếp hạng:
chọn to_tsvector ('tiếng Anh', 'trong danh sách các từ dừng');
Vị trí bị thiếu 1,2,4 là do các từ dừng. Xếp hạng được tính toán cho các tài liệu có và không có từ dừng hoàn toàn khác:
17397_17673
Nó tùy thuộc vào cách đọc kèo bóng đá cụ thể cách nó đối xử với các từ dừng. Ví dụ,ISPELL
cách đọc kèo bóng đá đầu tiên bình thường hóa các từ và sau đó nhìn vào danh sách các từ dừng, trong khiSnowball
Đầu tiên kiểm tra danh sách các từ dừng. Lý do cho các hành vi khác nhau là cách đọc kèo bóng đá nỗ lực để giảm tiếng ồn.
Theđơn giản
Mẫu cách đọc kèo bóng đá hoạt động bằng cách chuyển đổi mã thông báo đầu vào sang chữ thường và kiểm tra nó đối với một tệp các từ dừng. Nếu nó được tìm thấy trong tệp thì một mảng trống sẽ được trả về, khiến mã thông báo bị loại bỏ.
Đây là một ví dụ về định nghĩa cách đọc kèo bóng đá bằng cách sử dụngđơn giản
Mẫu:
Tạo cách đọc kèo bóng đá tìm kiếm văn bản công khai.simple_dict (
ở đây,tiếng Anh
là tên cơ sở của cách đọc kèo bóng đá tệp của các từ dừng. Tên đầy đủ của tệp sẽ là$ sharedir/tsearch_data/English.stop
, trong đó$ sharedir
có nghĩa làPostgreSQLThư mục dữ liệu chia sẻ của cài đặt, thường là/usr/local/share/postgresql
(Sử dụngpg_config --Sharedir
Để xác định nó nếu bạn không chắc chắn). Định dạng tệp chỉ đơn giản là cách đọc kèo bóng đá danh sách các từ, cách đọc kèo bóng đá từ trên mỗi dòng.
Bây giờ chúng ta có thể kiểm tra cách đọc kèo bóng đá của chúng ta:
chọn ts_lexize ('public.simple_dict', 'có');
Chúng ta cũng có thể chọn trả lạinull
20000_20134Chấp nhận
tham số đếnSai
. Tiếp tục ví dụ:
thay đổi cách đọc kèo bóng đá tìm kiếm văn bản công khai.simple_dict (Accept = false);
Với cài đặt mặc định củaChấp nhận
=TRUE
, Nó chỉ hữu ích khi đặt Ađơn giản
cách đọc kèo bóng đá ở cuối danh sách các cách đọc kèo bóng đá, vì nó sẽ không bao giờ chuyển bất kỳ mã thông báo nào cho một cách đọc kèo bóng đá sau. Ngược lại,Chấp nhận
=Sai
chỉ hữu ích khi có ít nhất một cách đọc kèo bóng đá sau.
Hầu hết các loại cách đọc kèo bóng đá đều dựa vào các tệp cấu hình, chẳng hạn như các tệp của các từ dừng. Những tệp nàyphảiĐược lưu trữ trong mã hóa UTF-8. Chúng sẽ được dịch sang mã hóa cơ sở dữ liệu thực tế, nếu điều đó khác, khi chúng được đọc vào máy chủ.
Thông thường, phiên cơ sở dữ liệu sẽ chỉ đọc một tệp cấu hình cách đọc kèo bóng đá một lần, khi nó được sử dụng lần đầu tiên trong phiên. Nếu bạn sửa đổi tệp cấu hình và muốn buộc các phiên hiện có để chọn nội dung mới, hãy phát hành mộtThay đổi cách đọc kèo bóng đá tìm kiếm văn bản
Lệnh trên cách đọc kèo bóng đá. Đây có thể là mộtMạnhgiảCập nhật không thực sự thay đổi bất kỳ giá trị tham số nào.
Mẫu cách đọc kèo bóng đá này được sử dụng để tạo cách đọc kèo bóng đá thay thế một từ bằng một từ đồng nghĩa. Các cụm từ không được hỗ trợ (sử dụng mẫu Thesaurus (Phần 12.6.4) cho điều đó). Một cách đọc kèo bóng đá đồng nghĩa có thể được sử dụng để khắc phục các vấn đề ngôn ngữ, ví dụ, để ngăn chặn một cách đọc kèo bóng đá gốc tiếng Anh giảm từHồiParisđếnparixông. Nó đủ để có cách đọc kèo bóng đáParis Paris
dòng trong cách đọc kèo bóng đá đồng nghĩa và đặt nó trướcEnglish_stem
cách đọc kèo bóng đá. Ví dụ:
Chọn * từ ts_debug ('tiếng Anh', 'paris');
Tham số duy nhất theo yêu cầu củaTừ đồng nghĩa
Mẫu làTừ đồng nghĩa
, là tên cơ sở của tệp cấu hình của nó -my_synonymy
Trong ví dụ trên. Tên đầy đủ của tệp sẽ là$ sharedir/tsearch_data/my_syn từ.syn
(trong đó$ sharedir
có nghĩa làPostgreSQLThư mục dữ liệu chung của cài đặt). Định dạng tệp chỉ là cách đọc kèo bóng đá dòng cho mỗi từ được thay thế, với từ theo sau là từ đồng nghĩa của nó, được phân tách bằng không gian trắng.
TheTừ đồng nghĩa
Mẫu cũng có tham số tùy chọnCaseSensitive
, mặc định làSai
. KhicaseSensitive
làSai
, Các từ trong tệp đồng nghĩa được gấp lại thành chữ thường, như là mã thông báo đầu vào. Khi nó làTRUE
, Các từ và mã thông báo không được gấp lại thành chữ thường, nhưng được so sánh As-is.
A Asterisk (*
) có thể được đặt ở cuối cách đọc kèo bóng đá từ đồng nghĩa trong tệp cấu hình. Điều này chỉ ra rằng từ đồng nghĩa là tiền tố.to_tsVector ()
, nhưng khi nó được sử dụng trongto_tsquery ()
, Kết quả sẽ là mục truy vấn với điểm đánh dấu khớp tiền tố (xemPhần 12.3.2). Ví dụ: giả sử chúng ta có các mục này trong$ sharedir/tsearch_data/từ đồng nghĩa_sample.syn
:
Postgres PGSQL
Sau đó chúng ta sẽ nhận được các kết quả sau:
25627_26386
Một cách đọc kèo bóng đá cách đọc kèo bóng đá (đôi khi viết tắt làTZ) là cách đọc kèo bóng đá tập hợp các từ bao gồm thông tin về các mối quan hệ của các từ và cụm từ, tức là, các thuật ngữ rộng hơn (bt), Các thuật ngữ hẹp hơn (nt), Điều khoản ưa thích, Điều khoản không được ưu tiên, Điều khoản liên quan, v.v.
26986_27144PostgreSQLThực hiện hiện tại của cách đọc kèo bóng đá cách đọc kèo bóng đá là một phần mở rộng của cách đọc kèo bóng đá đồng nghĩa với được thêmcụm từHỗ trợ. Một cách đọc kèo bóng đá cách đọc kèo bóng đá yêu cầu một tệp cấu hình của định dạng sau:
# Đây là cách đọc kèo bóng đá bình luận
trong đó đại tràng (:
) Biểu tượng hoạt động như cách đọc kèo bóng đá dấu phân cách giữa cách đọc kèo bóng đá cụm từ và sự thay thế của nó.
Một cách đọc kèo bóng đá cách đọc kèo bóng đá sử dụng ASubdictionary(được chỉ định trong cấu hình của cách đọc kèo bóng đá) để bình thường hóa văn bản đầu vào trước khi kiểm tra các kết quả phù hợp với cụm từ. Chỉ có thể chọn một bộ phụ.*
28141_28244phảiĐược biết đến Subdiced.
cách đọc kèo bóng đá Thesaurus chọn trận đấu dài nhất nếu có nhiều cụm từ phù hợp với đầu vào và các mối quan hệ bị phá vỡ bằng cách sử dụng định nghĩa cuối cùng.
Các từ dừng cụ thể được nhận ra bởi Subdicedary không thể được chỉ định; Thay vào đó sử dụng?
Để đánh dấu vị trí có bất kỳ từ dừng nào có thể xuất hiện. Ví dụ: giả sử rằngA
vàThe
là các từ dừng theo tiểu thư:
? cách đọc kèo bóng đá ?
khớpa cách đọc kèo bóng đá hai
và; Cả hai sẽ được thay thế bằng
SWSW
.
Vì cách đọc kèo bóng đá cách đọc kèo bóng đá đồng nghĩa có khả năng nhận biết các cụm từ, nó phải nhớ trạng thái của nó và tương tác với trình phân tích cú pháp. Một cách đọc kèo bóng đá cách đọc kèo bóng đá sử dụng các bài tập này để kiểm tra xem nó có nên xử lý từ tiếp theo hay dừng tích lũy không.asciiword
Mã thông báo, sau đó là một định nghĩa cách đọc kèo bóng đá cách đọc kèo bóng đá nhưcách đọc kèo bóng đá 7
sẽ không hoạt động vì loại mã thông báoUINT
không được gán cho cách đọc kèo bóng đá cách đọc kèo bóng đá đồng nghĩa.
Thesaurus được sử dụng trong quá trình lập chỉ mục để bất kỳ thay đổi nào trong các tham số của cách đọc kèo bóng đá cách đọc kèo bóng đáYêu cầuReindexing. Đối với hầu hết các loại cách đọc kèo bóng đá khác, các thay đổi nhỏ như thêm hoặc xóa các nút dừng không buộc phải tái lập.
Để xác định cách đọc kèo bóng đá cách đọc kèo bóng đá mới, sử dụngThesaurus
Mẫu. Ví dụ:
Tạo cách đọc kèo bóng đá tìm kiếm văn bản cách đọc kèo bóng đá thesaurus_simple (
ở đây:
Thesaurus_simple
là tên của cách đọc kèo bóng đá mới
Mythesaurus
là tên cơ sở của tệp cấu hình thesaurus. (Tên đầy đủ của nó sẽ là$ sharedir/tsearch_data/mythesaurus.ths
, trong đó$ sharedir
Có nghĩa là thư mục dữ liệu chia sẻ cài đặt.)
pg_catalog.english_stem
là sự phụ thuộc (ở đây, một bản gốc tiếng Anh Snowball) để sử dụng để chuẩn hóa cách đọc kèo bóng đá đồng nghĩa. Lưu ý rằng Subdipedy sẽ có cấu hình riêng (ví dụ: các từ dừng), không được hiển thị ở đây.
Bây giờ có thể liên kết cách đọc kèo bóng đá cách đọc kèo bóng đáthesaurus_simple
Đối với các loại mã thông báo mong muốn trong cách đọc kèo bóng đá cấu hình, ví dụ:
thay đổi cấu hình tìm kiếm văn bản Nga
Hãy xem xét một cách đọc kèo bóng đá thiên văn đơn giảnthesaurus_astro
, trong đó chứa cách đọc kèo bóng đá số kết hợp từ thiên văn:
Supernovae Stars: SN
32429_32535
Tạo cách đọc kèo bóng đá tìm kiếm văn bản cách đọc kèo bóng đá thesaurus_astro (
Bây giờ chúng ta có thể thấy cách thức hoạt động.ts_lexize
không hữu ích cho việc kiểm tra cách đọc kèo bóng đá đồng nghĩa, vì nó coi đầu vào của nó là một mã thông báo duy nhất. Thay vào đó chúng ta có thể sử dụngPlainto_tsquery
vàto_tsVector
sẽ chia chuỗi đầu vào của chúng thành nhiều mã thông báo:
Chọn Plainto_tsquery ('Supernova Star');
Về nguyên tắc, người ta có thể sử dụngto_tsquery
Nếu bạn trích dẫn đối số:
chọn to_tsquery ('' 'Supernova Star' '');
Thông báo rằngSupernova Star
khớpSupernovae Stars
inthesaurus_astro
Vì chúng tôi đã chỉ địnhEnglish_stem
STEMMER trong định nghĩa cách đọc kèo bóng đá đồng nghĩa. Thân máy đã loại bỏE
vàS
.
Để lập chỉ mục cụm từ gốc cũng như sự thay thế, chỉ bao gồm nó trong phần bên phải của định nghĩa:
Supernovae Stars: SN Supernovae Stars
TheISPELLMẫu cách đọc kèo bóng đá hỗ trợcách đọc kèo bóng đá hình thái, có thể bình thường hóa nhiều hình thức ngôn ngữ khác nhau của cách đọc kèo bóng đá từ vào cùng cách đọc kèo bóng đá từ vựng. Ví dụ: cách đọc kèo bóng đá tiếng AnhISPELLcách đọc kèo bóng đá có thể phù hợp với tất cả các khoản thanh toán và liên hợp của thuật ngữ tìm kiếmNgân hàng
, ví dụ:Ngân hàng
, Chance
, Ngân hàng
, Ngân hàng '
vàNgân hàng
.
tiêu chuẩnPostgreSQLPhân phối không bao gồm bất kỳ nàoISPELLTệp cấu hình. cách đọc kèo bóng đá cho một số lượng lớn ngôn ngữ có sẵn từISPELL. Ngoài ra, một số định dạng tệp cách đọc kèo bóng đá hiện đại hơn được hỗ trợ -MySpell(oo <2.0.1) vàHunspell(oo = 2.0.2). Một danh sách lớn các cách đọc kèo bóng đá có sẵn trênWiki OpenOffice.
Để tạoISPELLcách đọc kèo bóng đá thực hiện các bước sau:
Tải xuống các tệp cấu hình cách đọc kèo bóng đá.OpenOfficeTệp mở rộng có.OXT
Phần mở rộng. Nó là cần thiết để trích xuất.AFF
và.dic
Tệp, thay đổi tiện ích mở rộng thành.affix
và.dict
. Đối với một số tệp cách đọc kèo bóng đá, cũng cần phải chuyển đổi các ký tự thành mã hóa UTF-8 với các lệnh (ví dụ: cho cách đọc kèo bóng đá ngôn ngữ Na Uy):
ICONV -F ISO_8859-1 -T UTF -8 -O NN_NO.AFFIX NN_NO.AFF
Sao chép tệp vào$ sharedir/tsearch_data
Thư mục
Tải tệp vào PostgreSQL với lệnh sau:
Tạo cách đọc kèo bóng đá tìm kiếm văn bản English_hunspell (
ở đây,dictfile
, Afffile
vàstopwords
Chỉ định tên cơ sở của các tệp cách đọc kèo bóng đá, phụ đề và các tệp dừng. Tệp điểm dừng có cùng định dạng được giải thích ở trên chođơn giản
Loại cách đọc kèo bóng đá. Định dạng của các tệp khác không được chỉ định ở đây nhưng có sẵn từ các trang web đã đề cập ở trên.
cách đọc kèo bóng đá ISPELL thường nhận ra một bộ từ giới hạn, vì vậy chúng nên được theo sau bởi một cách đọc kèo bóng đá rộng hơn khác; Ví dụ, một cách đọc kèo bóng đá bóng tuyết, nhận ra mọi thứ.
The.AFFIX
Tệp củaISPELLCó cấu trúc sau:
Tiền tố
và.dict
Tệp có cấu trúc sau:
Lapse/ADGRS
Định dạng của.dict
Tệp là:
basic_form/bệp
trong.AFFIX
Tệp Mỗi cờ phụ được mô tả ở định dạng sau:
Điều kiện [-Stripping_letters,] adding_affix
Ở đây, điều kiện có định dạng tương tự như định dạng của các biểu thức chính quy. Nó có thể sử dụng các nhóm[...]
và[^...]
. Ví dụ,[AEIOU] y
có nghĩa là chữ cái cuối cùng của từ là"Y"
Và thư áp chót là"A"
, "E"
, "I"
, "O"
hoặc"U"
. [^EY]
có nghĩa là chữ cái cuối cùng không"E"
Nor"Y"
.
cách đọc kèo bóng đá ISPELL Hỗ trợ chia tách các từ ghép; một tính năng hữu ích.Từ hợp chất được kiểm soát
Tuyên bố đánh dấu các từ cách đọc kèo bóng đá có thể tham gia vào sự hình thành hợp chất:
Từ hợp chất được kiểm soát z
Đây là cách đọc kèo bóng đá số ví dụ cho ngôn ngữ Na Uy:
40131_40359
MySpellĐịnh dạng là cách đọc kèo bóng đá tập hợp con củaHunspell. The.affix
Tệp củaHunspellCó cấu trúc sau:
PFX A Y 1
Dòng đầu tiên của lớp phụ là tiêu đề. Các trường của cách đọc kèo bóng đá quy tắc phụ được liệt kê sau tiêu đề:
Tên tham số (PFX hoặc SFX)
cờ (tên của lớp phụ)
Dải các ký tự từ đầu (tại tiền tố) hoặc kết thúc (tại hậu tố) của từ
Thêm phụ
Điều kiện có định dạng tương tự như định dạng của các biểu thức chính quy.
The.dict
Tệp trông giống như.dict
Tệp củaISPELL:
Larder/m
MySpellKhông hỗ trợ các từ ghép.Hunspellcó hỗ trợ tinh vi cho các từ ghép. Hiện tại,PostgreSQLChỉ thực hiện các hoạt động từ hợp chất cơ bản của Hunspell.
TheSnowballMẫu cách đọc kèo bóng đá dựa trên một dự án của Martin Porter, người phát minh ra thuật toán gốc của Porter phổ biến cho ngôn ngữ tiếng Anh. Snowball hiện cung cấp các thuật toán thân cây cho nhiều ngôn ngữ (xemTrang web bóng tuyếtĐể biết thêm thông tin). Mỗi thuật toán hiểu cách giảm các dạng từ biến thể phổ biến thành cách đọc kèo bóng đá cơ sở, hoặc gốc, đánh vần trong ngôn ngữ của nó.Ngôn ngữ
tham số để xác định sử dụng thân cây nào và tùy chọn có thể chỉ định Astopword
Tên tệp đưa ra danh sách các từ để loại bỏ. (POSTGRESQL43361_43491
Tạo cách đọc kèo bóng đá tìm kiếm văn bản English_stem (
Định dạng tệp stopword giống như đã giải thích.
ASnowballcách đọc kèo bóng đá nhận ra mọi thứ, cho dù nó có thể đơn giản hóa từ này hay không, vì vậy nó nên được đặt ở cuối danh sách cách đọc kèo bóng đá. Thật vô ích khi có nó trước bất kỳ cách đọc kèo bóng đá nào khác vì một mã thông báo sẽ không bao giờ chuyển qua nó đến cách đọc kèo bóng đá tiếp theo.
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớpMẫu nàyĐể báo cáo vấn đề tài liệu.