-
Notifications
You must be signed in to change notification settings - Fork 26
Expand file tree
/
Copy pathsimilar-text.xml
More file actions
137 lines (130 loc) · 4.02 KB
/
Copy pathsimilar-text.xml
File metadata and controls
137 lines (130 loc) · 4.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: e095023e408c8cb6378ae16bb6870343a3946919 Maintainer: nilgun Status: ready -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.similar-text">
<refnamediv>
<refname>similar_text</refname>
<refpurpose>İki dizge arasındaki benzerliği hesaplar</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>similar_text</methodname>
<methodparam><type>string</type><parameter>dizge1</parameter></methodparam>
<methodparam><type>string</type><parameter>dizge2</parameter></methodparam>
<methodparam choice="opt"><type>float</type><parameter role="reference">yüzde</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
&book.programming.classics; kitabında açıkladığı şekilde iki dizge arasındaki
benzerliği hesaplar. Ancak bu gerçeklenim Oliver'in kod örneğindeki gibi bir
yığıt kullanmaz. Ayrıca bu algoritmanın hesaplama karmaşıklığı, N en uzun
dizgenin uzunluğu olmak üzere O(N**3)'tür.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>dizge1</parameter></term>
<listitem>
<para>
İlk dizge.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>dizge2</parameter></term>
<listitem>
<para>
İkinci dizge.
</para>
<note>
<para>
<parameter>dizge1</parameter> ve
<parameter>dizge2</parameter> yer değiştirise farklı sonuçlar ortaya
çıkabilir; aşağıdaki örnek fikir verebilir.
</para>
</note>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>yüzde</parameter></term>
<listitem>
<para>
Benzerlik oranını belirtmek için kullanılır. Bir gönderimi üçüncü
bağımsız değişkende aktararak, <function>similar_text</function> işlevinin
sonucu verilen dizgelerin uzunluklarının ortalamasının 100 katına
bölünerek benzerlik yüzde olarak hesaplanır.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Her iki dizgede eşleşen karakterlerin sayısı döner.
</para>
<para>
Eşleşen karakterlerin sayısı, en uzun ilk ortak alt dizgeyi bularak ve bunu
önekler ve son ekler için ard arda bularak hesaplanır. Bulunan tüm ortak alt
dizelerin uzunlukları toplanır.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example xml:id="similar_text.example.swapping">
<title>- <function>similar_text</function> bağımsız değişken takaslama örneği</title>
<para>
<parameter>dizge1</parameter> ve <parameter>dizge2</parameter>
takaslandığında farklı sonuçlar elde edileceğini gösteren örnek.
</para>
<programlisting role="php">
<![CDATA[
<?php
$sim = similar_text('bafoobar', 'barfoo', $perc);
echo "similarity: $sim ($perc %)\n";
$sim = similar_text('barfoo', 'bafoobar', $perc);
echo "similarity: $sim ($perc %)\n";
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
similarity: 5 (71.428571428571 %)
similarity: 3 (42.857142857143 %)
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>levenshtein</function></member>
<member><function>soundex</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->