تصف هذه المقالة طريقة Java التي توضح عدد حوادث سلسلة على سلسلة أخرى. شاركه للرجوع إليه ، على النحو التالي:
تحسب Java عدد المرات التي تظهر فيها سلسلة في سلسلة أخرى
الرمز كما يلي:
package me.chunsheng.javatest ؛ استيراد java.util.regex.matcher ؛ استيراد java.util.regex.pattern ؛/*** تم إنشاؤه بواسطة wei_spring في 16/10/11. * <p>* الإحصائيات عدد مرات تظهر سلسلة في سلسلة أخرى* طريقة للمطابقة العادية ، على افتراض أن السلسلة ليست سلسلة خاصة* على سبيل المثال: الباحث ("Adadadadauada" ، "ADA") ستكون غير دقيقة. * اجتياز آخر يحل الموقف أعلاه. * الوقت بين الاثنين هو كما يلي (في النانو ثانية): من الواضح أن العادية تستغرق وقتًا طويلاً ، ولا يتم استخدامها بشكل منتظم للإحصائيات !!! * الباحث: 3 * findertime: 1579549 * getCount: 4 * getCounttime: 34506 */public class substringCount {public static void main (string [] args) {system.out.println ("wulin.com اختبار النتيجة:") ؛ long current1 = system.nanotime () ؛ System.out.println ("Finder:" + Finder ("Adadadadauada" ، "Ada")) ؛ system.out.println ("findertime:" + (system.nanotime () - current1)) ؛ current2 = system.nanotime () ؛ System.out.println ("getCount:" + getCount ("Adadadadauauda" ، "Ada")) ؛ System.out.println ("getCounttime:" + (system.nanotime () - current2)) ؛ } static int getCount (مصدر السلسلة ، السلسلة الفرعية) {int count = 0 ؛ طول int = source.length () - sub.length () ؛ لـ (int i = 0 ؛ i <length ؛ i ++) {String sourceBak = source.subString (i ، i+sub.length ()) ؛ int index = sourceBak.indexof (sub) ؛ if (index! = -1) {count ++ ؛ }} عدد الإرجاع ؛ } finder int static public (مصدر السلسلة ، regexstr) {string regex = "[a-za-z]+" ؛ if (regexstr! = null &&! regexstr.equals ("")) {regex = regexstr ؛ } تعبير نمط = pattern.compile (regex) ؛ Matcher Matcher = Expression.matcher (Source) ؛ int n = 0 ؛ بينما (matcher.find ()) {n ++ ؛ } return n ؛ }}نتائج التشغيل:
دائمًا ما يكون لديك قلب متدين ومستعدون للمشاركة. المعرفة أكثر معنى.
ملاحظة: فيما يلي أداة إحصائية مريحة للغاية للرجوع إليها:
أداة عدد الكلمات عبر الإنترنت:
http://tools.vevb.com/code/zishutongji
إحصائيات الشخصية عبر الإنترنت وأدوات التحرير:
http://tools.vevb.com/code/char_tongji
لمزيد من المعلومات حول خوارزميات Java ، يمكن للقراء المهتمين بهذا الموقع عرض الموضوعات: "بنية بيانات Java وبرنامج تعليمي الخوارزمية" ، "ملخص" Tips Java ".
آمل أن يكون هذا المقال مفيدًا لبرمجة Java للجميع.