Arama ve Değiştir
Bir belgeyi kolayca bir klavye ve fare kullanarak gezinebilirsiniz, ancak birçok sayfayı kaydırmanız gerekiyorsa uzun bir belgedeki belirli metni bulmak oldukça zaman alacaktır. Belirli karakterleri veya bir belgede kullandığınız kelimeleri değiştirmek istediğinizde daha fazla zaman alacaktır. ‘Bul ve değiştir’ işlevi, bir belge içinde karakter dizisini başka bir karakter dizisiyle değiştirebileceğinizi gösterir.
Bu Aspose.Words sizin belgenizde belirli bir dizeyi veya düzenli ifade desenini bulmanıza ve onu ekstra uygulamalar gibi Microsoft Word yüklemeden ve kullanmadan alternatifle değiştirmenize izin verir. Bu yazma ve biçimlendirme görevlerini hızlandıracak, muhtemelen size saatlerce iş kurtaracak.
Bu makale, meta karakter desteğiyle normal ifadeler kullanarak string değiştirme yöntemini açıklamaktadır.
Bulmak ve Değiştirmek İçin Yollar
Aspose.Words aşağıdaki seçenekleri kullanarak bul ve değiştir işlemini uygulamak için iki yol sağlar:
- Basit dize değiştirme – belirli bir dizeyi başka bir dize ile değiştirmek için arama dizesini (alfanümerik karakterler) belirtmeniz gerekir ki bu, başka bir belirtilen değiştirme dizesiyle tüm oluşumları değiştirerek değiştirilir. Her iki dizede de semboller içermemelidir. Dikkat edin ki dize karşılaştırması büyük/küçük harfe duyarlı olabilir ya da imla konusunda emin olmayabilirsiniz veya birkaç benzer yazımınız olabilir.
- Düzenli ifadeler - tam eşleşmeleri bulmak ve bunları düzenli ifadelerinize göre değiştirmek için bir düzenli ifade belirtin. Bir kelimenin yalnızca alfanümerik karakterler oluşturduğu not alın. Tam eşleşmelerle değiştirilen bir yedekleme gerçekleştirilirse ve giriş dizesi herhangi bir sembol içeriyorsa hiçbir cümle bulunmaz.
Ayrıca, basit dizgi değiştirme ve düzenli ifadeler kullanarak özel metakarakterleri belirtebilirsiniz. “Bul ve Değiştir” işleminde kesintiler oluşturabilirsiniz.
Aspose.Words bulma ve değiştirme işlevselliğini sunar IReplacingCallBack. Birden çok seçeneği bulma ve değiştirme işlemi sırasında FindReplaceOptions sınıfı kullanarak çalışabilirsiniz.
Basit Basınım Değiştirme ile Metin Bul ve Değiştir
Belirli bir dizeyi bulmak veya değiştirmek için Replace yönteminden birini kullanabilirsiniz ve yapılan değişikliklerin sayısını döndürün. Bu durumda, değiştirilecek olan dize, tüm oluşumları değiştirecek olan dize, büyük/küçük harf duyarlılığı ve yalnızca ayrı duran kelimelerin etkilenip etkilenmeyeceği belirtilebilir.
Aşağıdaki kod örneği, “MüşteriAdı” dizgisini nasıl bulacağını ve onu ““James Bond”” dizgisiyle değiştireceğini göstermektedir:
Basit dize değiştirmeden önce belge arasındaki farkı fark edebilirsiniz:
Basit dizgi değiştirme uyguladıktan sonra:
Düzenli İfadelerle Metin Bul ve Değiştir
Bir normal ifade (regex) belirli bir metin dizisini tanımlayan bir kalıptır. Şunu varsayın, bir sözcüğün çift oluşumlarını tek bir oluşumla değiştirmek istiyorsunuz. Bu durumda, çift sözcük kalıbını belirtmek için aşağıdaki normal ifadeyi uygulayabilirsiniz: ([a-zA-Z]+) \1
.
Arama ve belirli karakter kombinasyonlarını değiştirme için diğer Replace yöntemini kullanın ve eşleşmeleri bulmak için normal ifade deseni olarak Regex
parametresini ayarlayın.
Aşağıdaki kod örneği, bir normal ifade kalıbıyla eşleşen dizeleri belirtilen bir değiştirme dizesiyle nasıl değiştireceğinizi gösterir:
Düzenli ifadelerle string değiştirme uygulamasından önce belgenin farkını fark edebilirsiniz:
Düzenli ifadelerle dize değiştirme uyguladıktan sonra:
Metakarakterler Kullanılarak Bul ve Değiştir String
Bir paragraf, bölüm veya sayfa içeren belirli bir metin veya ifadeyi aramak için arama dizesinde veya değiştirme dizesinde metakarakterleri kullanabilirsiniz. Bazı metakarakterler arasında bir paragraf kırılması için &p, bir bölüm kırılması için &b, bir sayfa kırılması için &m ve bir satır kırılması için &l bulunur.
Aşağıdaki kod örneği, paragraf ve sayfa aralığı ile metin değiştirmenin nasıl yapılacağını göstermektedir:
Bir belgedeki Başlık/Altbilgide Bir Dize Bul ve Değiştir
Word belgesi üstbilgi/altbilgi bölümündeki metinleri bulup değiştirebilirsiniz HeaderFooter sınıfı.
Aşağıdaki kod örneği belgenizin başlık bölümünde yer alan metni nasıl değiştireceğinizi göstermektedir:
Başlık dizesi değiştirme uygulandıktan sonraki belge arasındaki farkı gözlemleyebilirsiniz:
Ve üstbilgi dizesi değiştirme uyguladıktan sonra:
Koddaki örneği, belgenizin altbilgisi bölümünün metnini değiştirmek için, önceki başlık kodu örneğine çok benziyor. Tek yapmanız gereken iki satırı değiştirmektir:
HeaderFooter header = headersFooters.get(HeaderFooterType.HEADER_PRIMARY);
header.getRange().replace("Aspose.Words", "Remove", options);
Aşağıdaki ile beraber:
Başlatmadan önce belge arasındaki farkı görebilirsiniz:
Ve altbilgi dizesi değiştirme uygulandıktan sonra:
Bul ve Değiştir Sırasında Metin İhmal Et
Bul ve değiştir işlemini uygularken, metnin belirli bölümlerini göz ardı edebilirsin. Böylece, metnin bazı bölümleri aranmaktan çıkarılabilir ve bul ve değiştir yalnızca kalan parçalara uygulanabilir.
Aspose.Words IgnoreDeleted, IgnoreFieldCodes, IgnoreFields, IgnoreFootnotes ve IgnoreInserted' gibi metni göz ardı etmek için birçok bul ve değiştir özelliği sağlar.
Aşağıdaki kod örneğinde, silme revizyonları içindeki metin nasıl görmezden gelindiğini gösterir:
Arama ve Değiştirme Operasyonunu Özelleştir
Aspose.Words birçok farklı properties‘i bulmak ve değiştirmek için sağlar metin, örneğin belirli bir biçimle ApplyFont ve ApplyParagraphFormats özellikleri uygulayarak, değiştirme desenlerinde UseSubstitutions özelliğine sahip yer tutucuları kullanarak ve diğerleri.
Aşağıdaki kod örneği, belgenizdeki belirli bir kelimeyi nasıl vurgulayacağınızı gösterir:
Aspose.Words size, bir değiştirmek için bir özel yöntem oluşturmak ve çağırmak için IReplacingCallback arayüzünü kullanmanızı sağlar. Bulma ve değiştirme işlemini özelleştirmek istediğiniz bazı kullanım durumları olabilir örneğin bir düzenli ifadeyle belirtilen metni HTML etiketleriyle değiştirmek, bu nedenle temelde HTML ekleyerek değiştirme uygulayacaksınız.
Bir dizeyi bir HTML etiketiyle değiştirmek zorunda kalırsanız, bul ve değiştir işlemini özelleştirmek için IReplacingCallback arayüzünü uygulayın böylece eşleşme sizin belgenizdeki eşleşme düğümü ile bir koşulun başında başlar. Birkaç IReplacingCallback kullanım örneği sağlayalım.
Aşağıdaki kod örneği, belirtilen metin ile HTML’yi nasıl değiştireceğinizi gösterir:
Aşağıdaki kod örneği yeşil renk ile pozitif sayıları ve kırmızı renk ile negatif sayıları nasıl vurgulayacağını göstermektedir:
Aşağıdaki kod örneği, her satıra bir satır numarası eklemeyi gösterir: