Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Regex / System / Text / RegularExpressions / RegexGroup.cs / 1 / RegexGroup.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- // Group represents the substring or substrings that // are captured by a single capturing group after one // regular expression match. namespace System.Text.RegularExpressions { using System.Security.Permissions; ////// Group /// represents the results from a single capturing group. A capturing group can /// capture zero, one, or more strings in a single match because of quantifiers, so /// Group supplies a collection of Capture objects. /// [ Serializable() ] public class Group : Capture { // the empty group object internal static Group _emptygroup = new Group(String.Empty, new int[0], 0); internal int[] _caps; internal int _capcount; internal CaptureCollection _capcoll; internal Group(String text, int[] caps, int capcount) : base(text, capcount == 0 ? 0 : caps[(capcount - 1) * 2], capcount == 0 ? 0 : caps[(capcount * 2) - 1]) { _caps = caps; _capcount = capcount; } /* * True if the match was successful */ ////// public bool Success { get { return _capcount != 0; } } /* * The collection of all captures for this group */ ///Indicates whether the match is successful. ////// public CaptureCollection Captures { get { if (_capcoll == null) _capcoll = new CaptureCollection(this); return _capcoll; } } /* * Convert to a thread-safe object by precomputing cache contents */ ////// Returns a collection of all the captures matched by the capturing /// group, in innermost-leftmost-first order (or innermost-rightmost-first order if /// compiled with the "r" option). The collection may have zero or more items. /// ////// [HostProtection(Synchronization=true)] static public Group Synchronized(Group inner) { if (inner == null) throw new ArgumentNullException("inner"); // force Captures to be computed. CaptureCollection capcoll; Capture dummy; capcoll = inner.Captures; if (inner._capcount > 0) dummy = capcoll[0]; return inner; } } }Returns /// a Group object equivalent to the one supplied that is safe to share between /// multiple threads. ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EntityWithKeyStrategy.cs
- SignatureDescription.cs
- ItemCheckedEvent.cs
- SizeConverter.cs
- SoapObjectReader.cs
- DesignSurfaceServiceContainer.cs
- NativeMethodsCLR.cs
- CatchDesigner.xaml.cs
- ListViewSelectEventArgs.cs
- Signature.cs
- XmlSchemaRedefine.cs
- WebEncodingValidator.cs
- Literal.cs
- DataDocumentXPathNavigator.cs
- DNS.cs
- SafeViewOfFileHandle.cs
- RemoteWebConfigurationHostStream.cs
- TextBox.cs
- ServiceAuthorizationBehavior.cs
- ConstantProjectedSlot.cs
- ScrollProviderWrapper.cs
- WebPartZoneBaseDesigner.cs
- InfoCardRSAOAEPKeyExchangeFormatter.cs
- AnnotationDocumentPaginator.cs
- SrgsText.cs
- ManipulationDeltaEventArgs.cs
- ExpandCollapseProviderWrapper.cs
- TextBounds.cs
- FrameworkElement.cs
- FileChangesMonitor.cs
- DrawingContext.cs
- ChangePasswordDesigner.cs
- HttpCapabilitiesBase.cs
- XPathAncestorQuery.cs
- ServiceHttpModule.cs
- ConcurrentStack.cs
- XmlResolver.cs
- StrokeIntersection.cs
- SystemTcpConnection.cs
- Splitter.cs
- Funcletizer.cs
- WorkflowOperationErrorHandler.cs
- EntityDataSourceMemberPath.cs
- DrawTreeNodeEventArgs.cs
- IDReferencePropertyAttribute.cs
- Identity.cs
- XPathMultyIterator.cs
- ProxyHwnd.cs
- TagPrefixInfo.cs
- WorkflowFileItem.cs
- DependencyPropertyConverter.cs
- OletxResourceManager.cs
- DiagnosticTraceSource.cs
- SinglePageViewer.cs
- WSHttpBinding.cs
- TrustManagerMoreInformation.cs
- RectAnimationBase.cs
- TransformConverter.cs
- EventLogPermissionAttribute.cs
- FastEncoderWindow.cs
- XmlCountingReader.cs
- AnimationTimeline.cs
- LiteralLink.cs
- BitmapEffect.cs
- ZipIOExtraFieldZip64Element.cs
- QueryValue.cs
- PageContentAsyncResult.cs
- DiscreteKeyFrames.cs
- XmlILConstructAnalyzer.cs
- securitycriticaldata.cs
- DetailsViewUpdatedEventArgs.cs
- WebSysDescriptionAttribute.cs
- HostedNamedPipeTransportManager.cs
- OracleCommand.cs
- HttpException.cs
- ContextDataSource.cs
- QueryCacheEntry.cs
- CodeAttributeDeclarationCollection.cs
- TreeNodeStyle.cs
- Operator.cs
- TextAnchor.cs
- CngProperty.cs
- X509ChainPolicy.cs
- SectionUpdates.cs
- TaiwanCalendar.cs
- SafeFileMappingHandle.cs
- AccessedThroughPropertyAttribute.cs
- WebPartTransformerAttribute.cs
- RuntimeComponentFilter.cs
- QilXmlWriter.cs
- AllMembershipCondition.cs
- SqlNotificationRequest.cs
- RequestUriProcessor.cs
- ScriptManager.cs
- SettingsPropertyIsReadOnlyException.cs
- ClrPerspective.cs
- StickyNoteHelper.cs
- QilGenerator.cs
- InvokeBinder.cs
- Inflater.cs